异步IO:IO完成后如何联系线程?

时间:2014-03-20 07:46:43

标签: node.js asynchronous io netty

因此,在Node或Netty等异步框架上,可以为工作线程提供一个IO作业,它将与回调一起启动。然后,当IO作业(磁盘读取,数据库查询等)运行时,它返回并选择一个不同的任务。

我的问题是,IO完成后,该事件/回调如何进行进一步处理?我假设在同步操作中,有一个线程在那里等待。但是在异步环境中,什么能够获得IO的完成以及响应数据?工作线程是否定期检查完成情况?或者是某些东西用Node或Netty以某种方式注册完成事件?

很抱歉将Netty和Node混为一谈,我假设他们也这样做了。

1 个答案:

答案 0 :(得分:0)

在Netty中,任何IO操作都是异步的,read或write方法将返回一个Future Object,它可以添加Listener,在将来完成后,侦听器将回调。在听众中,你可以做任何你想做的事。