如何使用线程,互斥或其他方式管理回调函数

时间:2016-12-13 06:48:19

标签: c++ multithreading visual-c++ boost callback

void __stdcall callbackfunction(){message}

int main() {
    NotifytoServer(&callbackfunction);
    for (int i=0 ;i<3;++i) {
        AskServer();
    }

    //using messages from callbackfunction
}

每次调用AskServer函数时,对方(Server)都会向我发送一些消息。

1.如果我打电话给AskServer,有一个问题我不知道回调函数的时间(请参阅附图)。

2.我每次使用AskServer获取消息时,如何使用某些编程技术(boost :: thread,mutex.etc)来等待?

Image

1 个答案:

答案 0 :(得分:0)

也许您可以使用条件变量来同步线程? http://en.cppreference.com/w/cpp/thread/condition_variable