(Visual C++ 2008 を使用して) C++ の別のスレッドでメソッドを実行する方法を見つけるのに問題があります。これを行う方法をいくつか試しましたが、これまで成功したものはありません。
私は C++ の初心者ですが、Java の経験豊富なプログラマーですが、古い C++ アプリケーションのいくつかのバグを修正するタスクを与えられています。このプログラムは、「Mpeg」と呼ばれるオブジェクトを使用して、Mpeg ファイルのパケット化とデパック化を制御します。Mpeg オブジェクトを適切にセットアップした後、mpeg.Depacketise を呼び出す必要があります。これにより、メソッド DepacketiseInputFile() が実行されます。
_beginthread と System::Threading::Thread オブジェクトの両方を使用して、DepacketiseInputFile() を別のスレッドで実行しようとしました。
Thread^ th = gcnew Thread(gcnew ThreadStart(DepacketiseInputFile));
ただし、これはエラーを返します
&Mpeg::Depacketise を使用するとエラーが発生します
_beginthread を使用する場合、私が試したコードは
ただし、これにより、引数を正しく取得するのに常に問題があり、次のようなエラーが発生しました
不意に現れること。
誰もが推奨できる簡単な方法はありますか?私はこれをいじって数日過ごしましたが、どこにも行かないようです:(
どんな助けでも大歓迎です。
乾杯。