タイムアウト間隔で特定のタイプのデータについてデータベースをチェックする必要があるスレッドを作成したアプリケーションがあります。スレッドは、データベース接続の作成、クエリ、および接続のクローズを完全に担当します。CoInitialize 呼び出しをスレッド実行で 1 回だけ行い、その後の使用のために Ado 接続と Ado クエリを再利用しました。
さて、私の質問は、以前に (おそらく誤って) データベース データ チェックのためにループ内に CoUnitialize ステートメントを残していたことです。つまり、毎回 CoUnitialize の呼び出しが行われたということです。アプリケーションがクラッシュしなかったのはなぜですか? リリースするデータがなかったので、CoUnitialize は失敗したはずです。私はこれに疑問を持っています。
前もって感謝します