WinHttpSendRequest
私のサービスには、誰かが私のサービスを停止しようとしたときに実行される可能性のあるスレッドがあります。
WinHttpCloseHandleのドキュメントには次のように書かれています。
HINTERNET
アプリケーションは、を使用してリクエストハンドルを閉じることにより、進行中の同期または非同期リクエストを終了できます。WinHttpCloseHandle
しかし、後で同じドキュメントがこれと矛盾するようです。それは言う:
アプリケーションは
WinHttpCloseHandle
、同期要求を呼び出さないでください。これにより、競合状態が発生する可能性があります。
電話できないことに同意しているように見えるこのブログ投稿を見つけましWinHttpCloseHandle
た。
サービスを正常に停止できるように、この操作をキャンセルするにはどうすればよいですか?WinHttpSendRequest
時間がかかりすぎてサービスがすぐに停止しないため、自然にタイムアウトするのを本当に待つことはできません。Windowsはこれをエラーとして報告し、シャットダウン時にサービスを強制的に強制終了すると思います。
アイデアをいただければ幸いです。