Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обработка сообщений на Linux, Нужны API функции 
:(
    Опции темы
Gwendolen
Дата 13.8.2008, 20:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 119
Регистрация: 5.4.2005

Репутация: нет
Всего: 1



В Windows для обработки сообщений потока/окна используется цикл обработки сообщений и функции Win API:
GetMessage, PostThreadMessage или Post/SendMessage.

Что может применяться для этих целей в Linux?

Поисковики нашли мне: XNextEvent, XSendEvent. Но это для работы в X Window. 

Мне необходимо обработать сообщения, которые я сам буду посылать не основному потоку (нити), есть ли для этого более низкоуровневые API функции. Желательно пример реализации.

P.S. Для создания исполняемого файла планируется использовать QT, но обработку сообщений требуется сделать независимой от каких либо нестандартных библиотек.

P.P.S. Эта тема является частным продолжением более общей темы Сообщение из потока, Кросплатформенный алгоритм обработки.
--------------------
Наносите пользу и причиняйте добро!
PM MAIL   Вверх
bilbobagginz
Дата 13.8.2008, 21:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 4
Всего: 317



Цитата(Gwendolen @  13.8.2008,  20:03 Найти цитируемый пост)
P.S. Для создания исполняемого файла планируется использовать QT, но обработку сообщений требуется сделать независимой от каких либо нестандартных библиотек.

можете пояснить это P.S. ?  в линуксе нет LinAPI32 smile

всё зависит от среды работы, которую выберешь.

обычно приложения, которые нужно запускать на разных оперативных системах разрабатывают изначально в кроссплатформенной среде.
Написать программу на WinAPI,  а потом "попробовать переписать" ее с кроссплатформенной системой сообщений ... это как бы скрытый абсурд:
человек выбирает библиотеку. 

Есть самый низкий уровень работы -  XWindows. т.е. libX.so

но им никто не пользуется, потому что ... не эффективно всё писать на ней. 
надо дублировать работу, которую уже сделали: GTK, FLTK, QT и наверное несколько других.
самые распространенные из них - GTK и QT.

но если тебе надо писать кроссплатформенный софт, то уже работают с нашлепкой на GTK, по имени wxWidgets.
она работает и с Виндой, и с МАком и с Линухой.

или QT, которая тоже может тебе помочь.

А выбрать QT или wx это тоже вопрос еще тот.

тут просто подход нужен. QT насколько я понимаю придаёт приложению "Kью-Тишный" вид. а wxWidgets наоборот придаёт  приложению "родной" вид к оперативной системе, на которой бежит.

QT реализует систему работы с сообщениями немного по-своему, поэтому с т.з. времени адаптации, программисту windows легче будет освоить подход wxWidgets - т.к. их подход - очень похож на подход MFC



Думаю для п
Цитата(Gwendolen @  13.8.2008,  20:03 Найти цитируемый пост)
Что может применяться для этих целей в Linux?


решай сам...



--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
Lazin
Дата 13.8.2008, 21:24 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 1
Всего: 154



Цитата(Gwendolen @  13.8.2008,  20:03 Найти цитируемый пост)
но обработку сообщений требуется сделать независимой от каких либо нестандартных библиотек

ни в одной стандартной библиотеке нет средств для работы с сообщениями, есть boost::interprocess, там были какие-то очереди сообщений, сам еще не смотрел...
PM MAIL Skype GTalk   Вверх
andrew_121
Дата 14.8.2008, 01:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 3
Всего: 33



Gwendolen, Вот не понимаю smile Юзаешь Qt, и ищешь механизм обработки сообщений. Странно. А в Qt превосходнейший механизм!
Потокобезопасный! По моему один из лучших.


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
Gwendolen
Дата 14.8.2008, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 119
Регистрация: 5.4.2005

Репутация: нет
Всего: 1



Цитата(andrew_121 @  14.8.2008,  01:18 Найти цитируемый пост)
превосходнейший механизм

Согласен, превосходный. Но механизм зависит от библиотеки QT.
--------------------
Наносите пользу и причиняйте добро!
PM MAIL   Вверх
andrew_121
Дата 15.8.2008, 01:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 3
Всего: 33



Цитата(Gwendolen @  14.8.2008,  19:48 Найти цитируемый пост)
Согласен, превосходный. Но механизм зависит от библиотеки QT.

Так ты ее и используешь! Странно избегать зависимости от Qt, используя Qt.  smile 


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
bsa
Дата 17.8.2008, 21:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 16
Всего: 196



Цитата(andrew_121 @ 15.8.2008,  01:32)
Цитата(Gwendolen @  14.8.2008,  19:48 Найти цитируемый пост)
Согласен, превосходный. Но механизм зависит от библиотеки QT.

Так ты ее и используешь! Странно избегать зависимости от Qt, используя Qt.  smile

Он хочет писать плагины на Delphi.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0719 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.