Portál AbcLinuxu, 1. května 2025 00:44

Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
1.9.2009 00:25 sharpiq
Rozbalit Rozbalit vše Re: Konzolové programy v Qt 4 – 2 (práce s HTTP a FTP)
Odpovědět | Sbalit | Link | Blokovat | Admin

Zdravim,

mozno mi niekto bude vediet poradit - ked som posledne robil s metodami ktore pracuju s HTTP/HTTPS napriek tomu ze Qt network je deklarovane ako asynchronne na Windows strojoch to sposobovalo "zamrznutie" UI aplikacie pri poziadavkach na server. Ked som to prehnal cez gdb tak Qt vytvoralo cca 5-6 threadov na kazde volanie. Nevie niekto cim to moze byt sposobovane? Vyskytovalo sa to len na Windows, Qt bolo verzie 4.2.2.

David Watzke avatar 1.9.2009 00:44 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Konzolové programy v Qt 4 – 2 (práce s HTTP a FTP)

Zkus aktuální verzi Qt (dnes 4.5.2) a případně nahlaš chybu vývojářům (viz web qt.nokia.com). Půjde o windows-specific bug.

Pokud to zatím potřebuješ obejít, tak síťování dělej v odděleném vlákně QThread.

“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
1.9.2009 10:40 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: Konzolové programy v Qt 4 – 2 (práce s HTTP a FTP)
Odpovědět | Sbalit | Link | Blokovat | Admin
Má nějaký smysl, že signál finished spojuješ se slotem gotReply/downloadFinished už v konstruktoru, zatímco všechny ostatní až v metodě run (a to dokonce teprve poté, co spustíš samotné stahování)? Intuitivně bych to všechno dělal na jednom místě (asi v run před zahájením stahování)…
Ještě na tom nejsem tak špatně, abych četl Viewegha.
David Watzke avatar 1.9.2009 11:17 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Konzolové programy v Qt 4 – 2 (práce s HTTP a FTP)
Jo, má to smysl. V konstruktoru dělám spojení s tím managerem, zatímco v tý metodě spojuju sloty se signály socketu - a ten socket získám teprve po spuštění metody (head) manageru, takže to jinak ani nejde.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
1.9.2009 11:50 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: Konzolové programy v Qt 4 – 2 (práce s HTTP a FTP)
Ha, toho jsem si nevšiml, jak jsem to tak rychle prolítnul. Díky.
Ještě na tom nejsem tak špatně, abych četl Viewegha.
1.9.2009 10:54 Jirka
Rozbalit Rozbalit vše void QTcpServer::incomingConnection ( int socketDescriptor )
Odpovědět | Sbalit | Link | Blokovat | Admin

Jak korektne implementovat void QTcpServer::incomingConnection ( int socketDescriptor ) pro potomka tridy QTcpServer? Prijde mi, ze to neni mozne. Ta metoda je virtualni, aby mohla byt prepsana. Ale jeji implementace v QTcpServer vyuziva privatni funkce, takze kdyz ji chce nekdo implementovat znovu, nemuze podle me zajistit stejnou funkcnost.

David Watzke avatar 1.9.2009 11:18 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: void QTcpServer::incomingConnection ( int socketDescriptor )
Pokud chceš stejnou funkčnost, tak ji prostě nech jak je. Nemusíš ji reimplementovat za každou cenu. Pokud chceš aby dělala to, co dělá + něco navíc, tak si vytvoř vlastní a volej v ní
QTcpServer::incomingConnection(socketDescriptor);
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
29.6.2023 09:55 Adilkhatri
Rozbalit Rozbalit vše Re: Konzolové programy v Qt 4 – 2 (práce s HTTP a FTP)
Odpovědět | Sbalit | Link | Blokovat | Admin
A to a great degree brilliant blog passage. We are really grateful for your blog passage. fight, law usage You will find an extensive measure of techniques in the wake of heading off to your post. I was absolutely examining for. An obligation of appreciation is all together for such post and please keep it up. Mind blowing work. 먹튀검증

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.