ソケットから読み取り、利用可能なデータがあるときに信号 (QT 信号) を送信する QThread があります。これは read(2) をブロックすることで簡単ですが、あまり長く待たずに外部からスレッドを停止できるようにする必要があります。
pthread を使用していた場合は pselect と を使用しますpthread_kill(thread_id, some_signal)
が、QThread には同様のメソッドがないようです。そして、このプロジェクトに pthread への依存関係を追加することは、エレガントに見えません。
また、比較的短いタイムアウトでソケットから常に読み取ろうとするような他の醜い方法も使用したくありません。
編集: ソケットは TCP ではなく、Bluetooth L2CAP です。