首页 > 编程语言 > 详细

状态线程

时间:2016-08-20 10:10:56      阅读:284      评论:0      收藏:0      [点我收藏+]

轻量级协程,使用单线程用setjump与longjump来实现状态转移,快速,安全。

1.初始化

2.创建线程
   线程函数通过st提供的io实现
 
 
 
上下文切换
虚拟处理器
idle thread
信号转换为io事件
EDSM
 
一个线程模拟多线程
 
 
//打开udp
if ((nfd = st_netfd_open_socket(s)) == NULL) {
    h_errno = NETDB_INTERNAL;
    n = errno;
    close(s);
    errno = n;
    return -1;
  }
 
//发送udp
st_sendto(nfd, buf, len, (struct sockaddr *)&(_res.nsaddr_list[i]),
                  sizeof(struct sockaddr), timeout) != len)
 
 
//接收udp
 do {
      len = st_recvfrom(nfd, buf, blen, NULL, NULL, timeout);
      if (len <= 0)
        break;
    } while (id != hp->id);
 
 
 

状态线程

原文:http://www.cnblogs.com/manziluo/p/5789674.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!