1
D에서 core.thread
을 사용하여 제대로 핸들을 전달하는 방법은 무엇입니까? 나는이처럼하려고 노력했지만, 핸들을 변경하고 그 이유를 모르는 :d 언어 스레드
void WorkerThread(handle hand)
{
…
}
…
auto worker = new Thread({ WorkerThread(m_handle); });
D에서 core.thread
을 사용하여 제대로 핸들을 전달하는 방법은 무엇입니까? 나는이처럼하려고 노력했지만, 핸들을 변경하고 그 이유를 모르는 :d 언어 스레드
void WorkerThread(handle hand)
{
…
}
…
auto worker = new Thread({ WorkerThread(m_handle); });
Thread
생성자는 컨텍스트를 가질 수 대리자를 취할 수 있습니다. 표시된 코드에서 컨텍스트는 둘러싼 함수입니다. 어떤 이유로 문제가 발생하면 다음과 같이 할 수 있습니다.
void StartThread(handle hand) {
struct Con {
handle m_handle;
void Go() { WorkerThread(m_handle); }
}
Con con = new Con;
con.m_handle = hand;
auto worker = new Thread(&con.Go);
}