如何手写一个简单的客户端模拟并发的程序
具体用什么协议无所谓,主要是代码的思路,大家可以按照自己的来。
我目前想实现的就是每秒约 900-1000 条数据发送给服务器,我并发了 100 线程。主要的伪代码大概是这样,
func my_thread()
{
client := new client();
client.connect();
while (1)
{
client.send_a_message();
sleep_ms(100); // 100 ms
}
}
main()
{
for (i := 0; i < 100; ++i)
{
td := new thread(my_thread);
td.detach();
}
while (1)
sleep_ms(1000);
}
我知道应该加个条件变量然后 notify_all,但是我觉得等 100 线程全跑起来也是一样的,所以就没加。
我想问下我的这种写法算是模拟并发么?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
算是模拟并发