什么是Linux中的Win32消息泵?

时间:2015-01-23 21:30:00

标签: c++ linux

在Windows中,为了系统消息(例如游戏),可以大致这样做:

MSG msg;
while (PeekMessage(&msg, 0, 0, 0, PM_REMOVE))
{
   TranslateMessage(&msg);
   DispatchMessage(&msg);
}

我以前从未在Linux上做过开发(我现在在Mint v17上),所以我不确定等效(如果有的话)是什么。我对此做了一些自我研究,但没有找到很多帮助,很可能是因为我不知道这些概念的正确linux术语。

1 个答案:

答案 0 :(得分:5)

没有任何内在的(即内置于操作系统中)。如果您有例如X11,您有一个类似的消息循环,您可以在其中接收和发送消息。通常,您不会看到该消息循环,就像在MS Windows下,人们很少在裸win32 API上编程。使用所谓的窗口工具包,如WxWidgets,Qt,GTK等。

BTW:您也可以在Linux上使用win32 API的实现,它被称为WINE。