0

強制する方法はありますか - どんな方法でも -

BluetoothAuthenticateDevice( HWND hwndParent, HANDLE hRadio, BLUETOOTH_DEVICE_INFO * pbtbi, PWSTR pszPasskey, ULONG ulPasskeyLength);

そしてその

connect(SOCKET s, const struct sockaddr FAR * name, int namelen);

タイムアウトする関数呼び出し?

SO_RCVTIMEO と SO_SNDTIMEO を connect() ソケットで異なる値に設定して、それらが関数呼び出しの長さに影響を与えるかどうかを確認しましたが、無駄でし

connect() のデフォルトのタイムアウトは約 5 秒で、AuthenticateDevice では 30 ~ 45 秒ほど遅くなる可能性があるようです。認証/接続の失敗プロセスに 80 秒かかることがわかりました。ただし、最初の 1 ~ 2 秒で接続されなかった場合は接続されません。接続が切断されるまで、GUI はエンド ユーザーにとって意味のあるものを表示できません。余分な数秒は重要です。

実際にタイムアウトを強制することは可能ですか、それともスレッドでタイムアウトを開始し、時間がかかりすぎる場合にスレッドを強制終了する唯一の方法ですか?

4

1 に答える 1