1

イベントループのあるスレッド

別のスレッドで QTcpServer オブジェクトを作成し、着信接続をリッスンして発生時に処理します。ある時点で が削除され、スレッドでイベントを生成するものは何もありません。

手動で削除しないと、スレッドは無限ブロック (メモリを使用するが CPU を使用しない) に入りますか?

イベントループのないスレッド

QTcpServer オブジェクトが作成され、リッスンしています。

QTcpServer.listen ()は、スレッドがすべてのコードを実行して自然に終了するのを妨げていますか?

着信接続はどうですか?手動でポーリングする必要がありますか?

4

1 に答える 1

1

finishedスレッドのシグナルを独自のスロットに接続してdeleteLater、それ自体をクリーンアップできるようにすることをお勧めしますが、QThread へのポインターを保持すると、ポインターがぶら下がる可能性があります。

QTcpServer.listen()ポートをアクティブにするだけですぐに戻ります

TCPServer をリッスンするとnewConnection()、クライアントによって新しい接続が開始されるたびにシグナルが送信され、その後で取得できますnextPendingConnection

于 2013-10-22T13:06:07.740 に答える