我很难找出如何在 C++ 中的单独线程中运行方法(使用 Visual C++ 2008),我尝试了多种方法来做到这一点,但到目前为止没有一个成功。
我对 C++ 非常陌生,但在 Java 方面是一位相当有经验的程序员,但我的任务是修复旧 C++ 应用程序中的一些错误。该程序使用一个名为“Mpeg”的对象来控制 Mpeg 文件的打包和解包。正确设置 Mpeg 对象后,需要调用 mpeg.Depacketise,然后运行方法 DepacketiseInputFile()。
我试图通过使用 _beginthread 和 System::Threading::Thread 对象使 DepacketiseInputFile() 在单独的线程中运行
Thread^ th = gcnew Thread(gcnew ThreadStart(DepacketiseInputFile));
但是这会返回错误
使用 &Mpeg::Depacketise 给出错误
使用 _beginthread 时,我尝试的代码是
但是,有了这个,我一直无法正确地论证,出现错误,例如
突然出现。
有没有任何人可以推荐的简单方法来做到这一点?我花了几天时间玩这个,但似乎无处可去:(
任何帮助将不胜感激。
干杯。