1

所以我正在使用 Boost 库让一个线程等到另一个线程函数完成

线程 1

ipc::named_condition cdv_Android_socket( ipc::open_or_create, "cdv_Android_socket" );

cdv_Android_socket.wait(lock);

这会等到 DLL 中的函数运行它

线程 2

ipc::named_condition cdv_Android_socket( ipc::open_or_create, "cdv_Android_socket" );
cdv_Android_socket.notify_one();

我遇到的问题notify_one()是在声明之前被调用wait。我见过其他例子,其中 abool用于记住notify. 但是我不能这样做,因为我的主线程和 DLL 线程之间没有共享变量。

4

0 回答 0