上一页 1 ··· 26 27 28 29 30 31 32 33 34 ··· 100 下一页

2013年7月17日

UNIX环境高级编程——线程同步之互斥锁、读写锁和条件变量(小结)

摘要: 一、使用互斥锁1、初始化互斥量pthread_mutex_t mutex =PTHREAD_MUTEX_INITIALIZER;//静态初始化互斥量int pthread_mutex_init(pthread_mutex_t*mutex,pthread_mutexattr_t*attr);//动态... 阅读全文

posted @ 2013-07-17 12:27 胡永光 阅读(172) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——线程与进程区别

摘要: 进程和线程都是由操作系统所体会的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性。进程和线程的区别在于:(1)一个程序至少有一个进程,一个进程至少有一个线程。(2)线程的划分尺度小于进程,使得多线程程序的并发性高。 另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内... 阅读全文

posted @ 2013-07-17 11:57 胡永光 阅读(122) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——死锁

摘要: 操作系统中有若干进程并发执行,它们不断申请、使用、释放系统资源,虽然系统的进程协调、通信机制会对它们进行控制,但也可能出现若干进程都相互等待对方释放资源才能继续运行,否则就阻塞的情况。此时,若不借助外界因素,谁也不能释放资源,谁也不能解除阻塞状态。根据这样的情况,操作系统中的死锁被定义为系统中... 阅读全文

posted @ 2013-07-17 11:53 胡永光 阅读(196) 评论(0) 推荐(0) 编辑

2013年7月16日

UNIX环境高级编程——线程同步之条件变量以及属性

摘要: 条件变量变量也是出自POSIX线程标准,另一种线程同步机制。主要用来等待某个条件的发生。可以用来同步同一进程中的各个线程。当然如果一个条件变量存放在多个进程共享的某个内存区中,那么还可以通过条件变量来进行进程间的同步。 每个条件变量总是和一个互斥量相关联,条件本身是由互斥量保护的... 阅读全文

posted @ 2013-07-16 22:59 胡永光 阅读(252) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——线程同步之读写锁以及属性

摘要: 读写锁和互斥量(互斥锁)很类似,是另一种线程同步机制,但不属于POSIX标准,可以用来同步同一进程中的各个线程。当然如果一个读写锁存放在多个进程共享的某个内存区中,那么还可以用来进行进程间的同步, 互斥量要么是锁住状态要么是不加锁状态,而且一次只有一个线程可以对其加锁。读写锁可以... 阅读全文

posted @ 2013-07-16 15:16 胡永光 阅读(264) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——线程同步之互斥量

摘要: 互斥量(也称为互斥锁)出自POSIX线程标准,可以用来同步同一进程中的各个线程。当然如果一个互斥量存放在多个进程共享的某个内存区中,那么还可以通过互斥量来进行进程间的同步。 互斥量,从字面上就可以知道是相互排斥的意思,它是最基本的同步工具,用于保护临界区(共享资源),以保证在任何... 阅读全文

posted @ 2013-07-16 13:59 胡永光 阅读(251) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——pthread_create的问题

摘要: linux 下常用的创建多线程函数pthread_create(pthread_t * thread , pthread_attr_t * attr , void *(*start_routine)(void*) , void *args);其中第一个参数用来保存线程信息,第二个参数指新... 阅读全文

posted @ 2013-07-16 12:22 胡永光 阅读(220) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——主线程与子线程的退出关系

摘要: 我们在一个线程中经常会创建另外的新线程,如果主线程退出,会不会影响它所创建的新线程呢?下面就来讨论一下。1、 主线程等待新线程先结束退出,主线程后退出。正常执行。示例代码:#include #include #include #include #include pthread_t ntid;//... 阅读全文

posted @ 2013-07-16 11:53 胡永光 阅读(330) 评论(0) 推荐(0) 编辑

2013年7月15日

UNIX环境高级编程——线程

摘要: 线程包含了表示进程内执行环境必需的信息,其中包括进程中标示线程的线程ID、一组寄存器值、栈、调度优先级和策略、信号屏蔽字、errno变量以及线程私有数据。 进程的所有信息对该进程的所有线程都是共享的,包括可执行的程序文本、程序的全局内存和堆内存、栈以及文件描述符。线程标识: ... 阅读全文

posted @ 2013-07-15 17:39 胡永光 阅读(133) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——IPC总结

摘要: IPC主要包括:管道,消息队列,信号量,共享内存, 套接字(SOCKET)。一、IPC对象的持久性 每种IPC机制都会借助一种数据结构,这种数据结构的实例称为该IPC机制的对象(相应的,用于同步互斥的数据结构的实体也可以称为该机制的对象)。理清IPC对象的持久性,有助于理解相应的... 阅读全文

posted @ 2013-07-15 17:16 胡永光 阅读(183) 评论(0) 推荐(0) 编辑

上一页 1 ··· 26 27 28 29 30 31 32 33 34 ··· 100 下一页

导航