linux - java 服务器开发与 c服务器开发一些混淆
本文介绍了linux - java 服务器开发与 c服务器开发一些混淆的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
我之前做过linux下c的服务器开发,比较熟悉epoll、select、poll,kqueue等技术。最近在学习java服务器开发,遇到好多概念,有些混淆。
1、java中NIO是非阻塞IO,NIO的实现有selector和epoll,这里的epoll和linux C中的epoll一样么?是同一个概念么?
2、linux c 下epoll本质也还是同步IO,那么linux c下面有没有那些类似java nio这样的技术方案?
主要是两边概念有点混乱,希望能对比着学习。
解决方案
1:如果内核版本>=2.6
则,java中具体的SelectorProvider
为EPollSelectorProvider
否则为默认的PollSelectorProvider
.
2: 我认为epoll
不能用语言来区分,可以通过平台
区分,比如只有Linux下有epoll,这在哪肯定是一个概念。
3:同步和异步就看通知你的是什么事件:同步通知你的是就绪事件,异步是完成事件,都需要你自己用代码实现相应的逻辑的。
这篇关于linux - java 服务器开发与 c服务器开发一些混淆的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文