Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1663521
  • 博文数量: 607
  • 博客积分: 10031
  • 博客等级: 上将
  • 技术积分: 6633
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-30 17:41
文章分类

全部博文(607)

文章存档

2011年(2)

2010年(15)

2009年(58)

2008年(172)

2007年(211)

2006年(149)

我的朋友

分类: LINUX

2007-11-28 19:42:14

所有的多线程库都有类似的创建函数和操作习惯。

最简单的POSIX线程这样创建的:
pthread_create(&tid, NULL, start_fn, arg);
pthread_exit(status);

有时候,你想等着线程退出。方法之一是调用join, pthread_join(thd).
但是正常的逻辑是不要等待线程,不要返回状态。用同步变量更好。

要小心没拆分的线程。忘记合并它那会造成很大的内存泄露。

退出进程
当1个线程执行到底,会隐式调用pthread_exit,结束该线程,返还资源。

当所有线程都结束完,会隐式调用exit(),结束该进程。通常,当你意识到该结束进程时,应自己调用exit()。

取消线程

pthread_cancel(thd)

悬停线程

pthread库没有包含这个,开发人员自行实现!







 

阅读(1149) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~