- 论坛徽章:
- 1
|
别啦,上面都是开玩笑。
因为每次写多线程的交互代码,最后都陷入万劫不复的混乱中,
这两天在琢磨这段代码,如何用C/C++的等价表达?
利用 回调函数(或仿函数/lambda表达式) 等手段,
不难模拟出类似表达。
难琢磨的地方:
线程(或进程)之间消息传递,如何包装,使他像node.js一样,对用户几乎看不到。
这个回调函数,看似要在主线程的空间内执行比较好。
不晓得写C/C++的,有什么好的模型。
//主线程
var http = require('http');
//主线程:创建一个子线程
http.createServer(
function (req, res) {
//子线程:执行,给主线程发送创建完毕的消息
//主线程:给子线程发送writeHead消息,控制子线程执行writeHead函数
res.writeHead(200, {'Content-Type': 'text/plain'});
//主线程:给子线程发送end消息,控制子线程执行end函数
res.end('Hello World\n');
}).listen(1337, "127.0.0.1");
console.log('Server running at http://127.0.0.1:1337/');
//主线程:等待所有子线程完成 |
|