ここで説明されているバグのいくつかのバリアントが発生しています (バグレポートのサンプル コードを使用):
https://bugreports.qt.io/browse/QTBUG-22145
次のように再現可能です。
- アプリケーションを 2 回起動します (現在は App1 と App2 と呼ばれています)。
- App1の「聞く」をクリック
- App2 で「接続」をクリックします (両側で接続が正常に確立されていることがわかります)。
- App2 で「ping」をクリックします (App1 に「ping」メッセージが表示され、App2 に「pong」メッセージが表示されます)。
- app1 を閉じます (App2 に切断メッセージが表示されます)。
- 別のインスタンスを開始します (現在は App3 と呼ばれています)
- App3の「聞く」をクリック
- App2 で「接続」をクリックします (両側で接続が正常に確立されていることがわかります)。
- App2 で「ping」をクリックします (これで、ping メッセージも pong メッセージも送信されなくなります)。
そのシナリオで有効な接続を取得するための既知の回避策はありますか? 接続が機能していないことを検出する方法はありますか?
PS:バグレポートのVS-project-fileに加えて、私のQt-project-file:
QT += network gui HEADERS += \ mainwidget.h SOURCES += \ mainwidget.cpp \ main.cpp