1.进程与线程 1)用户空间角度: 进程:fork()创建进程,在创建时,重新申请了内存空间,copy了父进程的所有信息。 线程:pthread_create()创建进程时,只申请自己的栈空间。 2)内核空间: 对内核空间,两者都有自己的pid,因此内核空间不区分。2.基本函数: 1)创...
分类:
编程语言 时间:
2015-03-12 00:48:58
阅读次数:
243
线程属性pthread_attr_ttypedefstruct{int detachstate; 线程分离状态int schedpolicy; 线程调度策略structsched_param schedparam; 线程调度参数int inheritsched; 线程调度继承性int scope; ...
分类:
编程语言 时间:
2015-03-11 10:34:52
阅读次数:
169
最近看《UNIX环境高级编程》多线程同步,看到他举例说条件变量pthread_cond_t怎么用,愣是没有看懂,只好在网上找了份代码,跑了跑,才弄明白[cpp]view plaincopy#include#include#includepthread_mutex_tmutex=PTHREAD_MUT...
分类:
编程语言 时间:
2015-03-10 23:07:08
阅读次数:
232
本文属于转载,原文链接如下:http://blog.csdn.net/chexlong/article/details/7080537与其相关的一组API包括:pthread_mutex_init,pthread_cond_init,pthread_mutex_lock,pthread_cond_w...
分类:
编程语言 时间:
2015-03-08 22:46:07
阅读次数:
210
Technorati 标签: Linux thread 索引: 1.创建线程pthread_create 2.等待线程结束pthread_join 3.分离线程pthread_detach 4.创建线程键pthread_key_create 5.删除线程键pthread_key_delete 6.设...
分类:
编程语言 时间:
2015-03-06 18:45:52
阅读次数:
209
在使用 eclipse编写多线程程序的时候,会出现下面的问题
undefined reference to `pthread_create’,这是编译器找不到函数库的原因。
解决办法:
右键单击项目选择Properties ->选择setting->gcc c linker -> libraries ->点击上面的加号添加一个函数库pthread 。保存就可以了...
分类:
编程语言 时间:
2015-03-03 16:46:22
阅读次数:
105
1.CWinApp是一个i额用户界面线程对象,派生自CWinThread,处理用户产生的事件和消息。
MFC
2.AfxBeginThread函数创建和初始化CWinThread对象,启动并返回地址。
3.
pThread = new CWinThread();
pThread->m_bAutoDelete = FALSE;
pThread = AfxBeginThread(StartAndC...
分类:
编程语言 时间:
2015-03-02 21:05:14
阅读次数:
170
场景:
1. 需要统计某个线程的对象上创建的个数.
2. 当创建的堆空间需要根据线程需要创建和结束时销毁时.
3. 因为范围是线程只能看到自己的存储数据,所以不需要临界区或互斥量来维护自己的堆内存. 加入如果用全局std::map实现,那么必须在put和get时加锁,这是很损耗资源的.
4. 可以用在维护一个连接,比如socket,database连接....
分类:
编程语言 时间:
2015-03-01 00:25:18
阅读次数:
273
进程/线程 同步.(posix)
互斥锁
条件变量
读写锁
记录上锁...
分类:
其他好文 时间:
2015-02-28 21:45:00
阅读次数:
286
场景:
1. 在多线程程序里,临界区是最常见的同步访问共享资源的最简单的解决方案.
2. pthread是跨平台的线程模型,那么它和本地的线程模型的临界区编程有什么区别呢?...
分类:
编程语言 时间:
2015-02-27 18:27:43
阅读次数:
306