当前位置: 技术问答>linux和unix
unix和windows的一些机制上的区别?
来源: 互联网 发布时间:2016-08-30
本文导语: 我略懂一点WINDOWS编程,对其消息循环机制有点了解,用循环语句来接收消息.(听说,很费资源) 对LINUX编程没接触过,我的疑惑就是: LINUX的程序是用什么机制来接收用户的事件而做出反应的? 是不是同样也需要循环? ...
我略懂一点WINDOWS编程,对其消息循环机制有点了解,用循环语句来接收消息.(听说,很费资源)
对LINUX编程没接触过,我的疑惑就是: LINUX的程序是用什么机制来接收用户的事件而做出反应的?
是不是同样也需要循环? 只是概念术语不一样而已?
在JAVA中,是用事件监听器,但是他也是需要循环监听的吧?
还是性质上是完全不同的? 但是如果不用循环机制,怎么能知道用户在任何时候产生了事件呢?
对LINUX编程没接触过,我的疑惑就是: LINUX的程序是用什么机制来接收用户的事件而做出反应的?
是不是同样也需要循环? 只是概念术语不一样而已?
在JAVA中,是用事件监听器,但是他也是需要循环监听的吧?
还是性质上是完全不同的? 但是如果不用循环机制,怎么能知道用户在任何时候产生了事件呢?
|
也一样,图形界面基本上都是同样的机制。另外,消息循环不特别占用资源,因为大部分时间都处于阻塞状态
|
其实在Unix下也是相同的道理,都是采用循环监听的机制,只是处理的方法不同而已,比如有消息过来后,通过管道或者其他方式来进行唤醒等。
|
进程在等待消息,但消息还没到,当然要阻塞。
|
我觉得消息到了,就像发了一个中断来提醒程序,消息到了。
|
看看源代码,慢慢你就明白了。