0

私は次のコードに取り組んでいます:

r = gcnew RTMotionDetector();

Thread^ detectionThread = gcnew Thread(gcnew System::Threading::ThreadStart(r, &RTMotionDetector::start));

以下はRTMotionDetector

#pragma once
#include "MotionDetector.h"

ref class RTMotionDetector :
    public MotionDetector
{
public:
    RTMotionDetector(void);
    ~RTMotionDetector(void);
    void start();
    void pause();
    void stop();

private:
    VideoCapture *cam1;
};

ここで、スレッドが のstart()メソッドにターゲットされていることがわかりますRMotionDetector。ただし、このメソッドだけでなく、スレッド内で呼び出しを処理するには、このクラスに属する他のすべてのメソッドが必要です。

それで、クラス全体をスレッドに入れて、必要なときにそのすべてのメソッドを呼び出す方法はありますか? このクラスは非常に重いため、このクラスはスレッド内にある必要があります。そうしないと、他の作業が完全に停止します。私はWindowsプログラミングにかなり慣れていません。

4

0 に答える 0