当前位置: 技术问答>linux和unix
Windows下的消息循环机制在Unix下如何实现?
来源: 互联网 发布时间:2015-06-01
本文导语: 我目前碰到一个项目,把在Windows下的C程序改到Unix下还用C实现 该项目涉及到Socket通信 原来的Windows下的C程序中,采用了Windows的消息循环机制 请问在Unix下有没有类似的机制?或者等价的解决方案? 请教了,各位大虾 ...
我目前碰到一个项目,把在Windows下的C程序改到Unix下还用C实现
该项目涉及到Socket通信
原来的Windows下的C程序中,采用了Windows的消息循环机制
请问在Unix下有没有类似的机制?或者等价的解决方案?
请教了,各位大虾
该项目涉及到Socket通信
原来的Windows下的C程序中,采用了Windows的消息循环机制
请问在Unix下有没有类似的机制?或者等价的解决方案?
请教了,各位大虾
|
几天前我写了一个UNIX(SCO)Windows下的 Proxy, 用的都是select, 在UNIX下, 辅于fork(); 而在Windows用多线程实现(效率较差, 但为了开发速度). 楼主要改的程序在Windows下是用WSAAsyncSelect实现的吧. 按照楼主的要求, 像前面几位所说的用select是可以实现的.
|
利用UNIX下的SOCKET进程间通讯的原理,充分运用SELECT、线程(如果处理量非常大时,建议用多进程处理)等处理机制可以完成非常复杂的通讯模块或通讯系统。
|
1、把微软的代码移植过来(如果微软愿意给你们代码的话)
2、使用linux中的方法,如gtk或者qt(注意版权问题)
3、自己写,最简单就是一个while循环和一个消息队列实现
2、使用linux中的方法,如gtk或者qt(注意版权问题)
3、自己写,最简单就是一个while循环和一个消息队列实现
|
你的东西需要GUI吗?不用的话,select和while就足够了。
|
select()异步I/O控制
|
我看只有自己写了,就象原始的Windows SDK编程那样,使用一个大的While循环
|
GUI界面:事件循环是都有的,看你用什么开发了,最基本的是XEvent循环。
字符界面:为什么要循环?原来的Windows事件循环是做什么用的?用select/poll之类的。
字符界面:为什么要循环?原来的Windows事件循环是做什么用的?用select/poll之类的。
|
gtk_main()就是进入消息循环,signal_connect就可以接收到消息,
字符界面下,不知道,
字符界面下,不知道,
|
去www.wxWindows.org看看,你会有新的发现
里面有个类叫做wxAsyncSocket和windows提供的AsyncSocket功能一致
对于MFC程序来说,移植只需要做很少的工作
里面有个类叫做wxAsyncSocket和windows提供的AsyncSocket功能一致
对于MFC程序来说,移植只需要做很少的工作
|
关注,我也做了类似的东西。
用多线程+select+信号。
用多线程+select+信号。