Ahoj, mam problem s mym programem v gtkmm. Je to client-server aplikace, kazdych x sekund se pripoji k serveru a stahne si zpravy. Toto delam pomoci Glib::signal_timeout. Pak chci novou zpravu zobrazit v novem okne. A tady je problem, protoze timeout nepokracuje dokud mu funkce nevrati true, Gtk::Window::run ale zablokuje funkci dokud se okno nezavre. Takze prijde jen jedna zprava a pak se timeout zablokuje dokud neni okno zavreno. Chtel jsem to vyresit pres vlakna. Udelal jsem si funkci, ktera by jen zavolala Gtk::Window::run a tu bych pouzil v Glib::Thread. Funguje to hezky dokud ono okno nezavru, potom vypisi Xka:
Xlib: unexpected async reply (sequence 0x4921)!
a hlavni okno se prestane vykreslovat. Zjistil jsem, ze Xka nepodporuji vicevlaknove aplikace. Nevite nekdo jak mam kazdych x sekund v gtkmm provest nejakou funkci, ktera muze vytvorit nove okno a tim se zablokovat?
Fórum › C / C++
Gtkmm
Zjistit počet nových příspěvků
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 22 hostů
Podobná vlákna
Gtkmm instalce pod Linuxem — založil Alan
Pango, gtkmm - divné chování — založil Karel_159
GTKmm pro Windows nebo aspoň cross-kompilace? — založil Eatel
Moderátoři diskuze