Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Bmg113
201 / 147 / 5
Регистрация: 14.03.2013
Сообщений: 784
#1

Как передать ссылку на переменную по UDP? - C++

16.02.2014, 20:18. Просмотров 394. Ответов 7
Метки нет (Все метки)

Все в пределах одного компьютера.
Две программы.
Одна имеет переменную int r;
Вторая должна получить ссылку и считывать в любое время.

Через qDebug() я могу получить адрес переменной, но если записывать в поток связанный с QByteArray и отправлять то я ничего не получаю... точнее выходной qDebug() не может понять что ему выдали ( QVariant(Invalid) )

помогите решить проблему.

p.s. Есть еще такая идея, что на аппаратном уровне родной процесс не даст доступ к переменной (своей области памяти) другому процессу, правда ли эта?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.02.2014, 20:18     Как передать ссылку на переменную по UDP?
Посмотрите здесь:

Как передать ссылку на объект в класс - C++
Здравствуйте! Подскажите, пожалуйста, почему не работает: log.h class LogClass { public: bool InitializeLog(); void...

Как передать в функцию ссылку на структуру? - C++
Добрый вечер, помогите пожалуйста разобраться. Нужно чтобы функция myProc принимала не структуру, а ссылку на структуру.struct vs { long...

Как передать в переменную класс-наследник? - C++
Есть главный класс куда я отправляю класс-контроллер class DrawBase { private: Controller* controllerClass; public: void...

Как передать в stringstream переменную типа int? - C++
Как запихнуть в stringstram int? Не находит такой перегруженной функции. sstream заинклудил. ifstream fin("C:\\ServerName.txt"); ...

Как переменную из одной функции передать в другую? - C++
у меня надо переменную index из функции maxi передать в функцию summa #include "stdafx.h" #include "math.h" #include "iostream" ...

Нюансы работы с лямбдами и область видимости переменных: как передать в лямбду переменную, а не её копию? - C++
Очень нужна помощь, не выходит задать глобальную переменную для работы программы, возможно нужно немного изменить код функции: Функция...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2459 / 1631 / 238
Регистрация: 24.11.2012
Сообщений: 4,009
16.02.2014, 20:33     Как передать ссылку на переменную по UDP? #2
Судя по формулировке, автору нужна разделяемая память (как вариант). Ключевые слова для поиска - shared memory. В Qt должны быть средства для работы с ней.
Jupiter
Каратель
Эксперт С++
6552 / 3972 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
16.02.2014, 20:39     Как передать ссылку на переменную по UDP? #3
Цитата Сообщение от Bmg113 Посмотреть сообщение
p.s. Есть еще такая идея, что на аппаратном уровне родной процесс не даст доступ к переменной (своей области памяти) другому процессу, правда ли эта?
правда, только не на аппаратном, а на уровне ОС
Bmg113
201 / 147 / 5
Регистрация: 14.03.2013
Сообщений: 784
16.02.2014, 22:44  [ТС]     Как передать ссылку на переменную по UDP? #4
Всем спасибо решил проблему.
Создал Главное окно с 2 кнопками. внутри класса главного окна создал два класса диалоговых и два потока.
Надеюсь это не самый плохой вариант

Правда выдает такие вот ошибки, но работает, странно...

C++ (Qt)
1
2
3
4
QObject::moveToThread: Widgets cannot be moved to a new thread
QObject::moveToThread: Widgets cannot be moved to a new thread
QThread: Destroyed while thread is still running
QThread: Destroyed while thread is still running
Jupiter
Каратель
Эксперт С++
6552 / 3972 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
16.02.2014, 22:50     Как передать ссылку на переменную по UDP? #5
Цитата Сообщение от Bmg113 Посмотреть сообщение
Надеюсь это не самый плохой вариант
плохой ибо
Цитата Сообщение от Bmg113 Посмотреть сообщение
выдает такие вот ошибки
что вообще нужно-то?
Bmg113
201 / 147 / 5
Регистрация: 14.03.2013
Сообщений: 784
16.02.2014, 23:10  [ТС]     Как передать ссылку на переменную по UDP? #6
Цитата Сообщение от Jupiter Посмотреть сообщение
что вообще нужно-то?
Надо два процесса распараллелить.
Один генерирует данные, другой считывает и передает дальше по порциям.
Вот и думаю что бы оба в разные потоки засунуть.
Оба работают по таймеру.
И получается если в одном потоке то либо один ждет либо другой...

Добавлено через 14 минут
Цитата Сообщение от Bmg113 Посмотреть сообщение
QThread: Destroyed while thread is still running
эту ошибку получилось исправить.

C++ (Qt)
1
2
3
    
thread->quit();
thread->wait();
Jupiter
Каратель
Эксперт С++
6552 / 3972 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
16.02.2014, 23:10     Как передать ссылку на переменную по UDP? #7
Цитата Сообщение от Bmg113 Посмотреть сообщение
Один генерирует данные, другой считывает и передает дальше по порциям.
конкретнее
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.02.2014, 23:12     Как передать ссылку на переменную по UDP?
Еще ссылки по теме:

Передать ссылку на массив из одной функции во вторую - C++
Как передать ссылку на массив из одной функции во вторую, если в первый мы его инициализируем, а во второй заполняем? #include <iostream>...

Передать переменную в массив - C++
как передать переменную с в массив?? #include "stdafx.h" #include "iostream" using namespace std; void main() { ...

Передать значения двумерного массива из функции через ссылку - C++
Функция создаёт и заполняет статический двумерный массив. Как, вызвав эту функцию, можно передать созданный в ней массив массиву извне при...

Передать переменную из класса в класс - C++
Добрый день, следующая задача передать переменную из класса А в класс В class_a.h #ifndef CLASS_A_H #define CLASS_A_H ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Bmg113
201 / 147 / 5
Регистрация: 14.03.2013
Сообщений: 784
16.02.2014, 23:12  [ТС]     Как передать ссылку на переменную по UDP? #8
Цитата Сообщение от Jupiter Посмотреть сообщение
конкретнее
Представ те что один процесс генерирует числа и через определенное время записывает их в массив, пройдя весь массив начинает сначала.
А второй процесс получив адрес массива считывает данные через определенное время.
Yandex
Объявления
16.02.2014, 23:12     Как передать ссылку на переменную по UDP?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru