(1)创建线程函数: pthread_create(); (2)阻塞等待线程结束并回收资源函数: pthread_join(); (3)线程退出函数:pthread_exit(); (4)线程互斥锁: 初始化 pthread_mutex_init(); 上锁 pthread_mutex_lock() ...
分类:
编程语言 时间:
2016-11-14 20:33:05
阅读次数:
193
声明:本文为原创博文,转载请注明出处。 Nodejs编程是全异步的,这就意味着我们不必每次都阻塞等待该次操作的结果,而事件完成(就绪)时会主动回调通知我们。在网络编程中,一般都是基于Reactor线程模型的变种,无论其怎么演化,其核心组件都包含了Reactor实例(提供事件注册、注销、通知功能)、多 ...
分类:
编程语言 时间:
2016-11-12 01:45:47
阅读次数:
448
引言 信号量分为三种:posix有名信号量(使用Posix IPC名字标识)/posix基于内存的信号量(共享内存)/System V 信号量(内核) 有了互斥锁和条件变量,为何还要用信号量呢?Posix.1基本原理一文解释了这个问题:信号量的目的主要是用于进程间的同步,这些进程可能共享也可能不共享 ...
分类:
其他好文 时间:
2016-11-05 18:04:25
阅读次数:
163
引言 记录上锁是对读写锁的一种扩展,他可以用于有亲缘关系和无亲缘关系进程之间共享某个文件的读写。这中锁通常是在内核中维护的(与互斥锁和读写锁做比较)。 粒度:用于标记能被锁住的对象的大小。Posix记录上锁来说,粒度就是单个字节。 Posix fcntl 记录上锁 posix fcntl 记录上锁被 ...
分类:
其他好文 时间:
2016-11-05 14:44:05
阅读次数:
183
1.1 概述 IPC是进程间通信的简称。 IPC分为5个主要领域: (1)消息传递:管道、FIFO、消息队列 (2)同步:互斥锁、条件变量、读写锁、信号量 (3)共享内存:匿名共享内存、有名共享内存 (4)远程调用:Solaris门、Sun RPC (5)文件 1.2 进程、线程与信息共享 进程、线 ...
分类:
其他好文 时间:
2016-11-04 23:23:21
阅读次数:
192
《EffectiveC++》读书笔记之三资源管理准备知识:所谓资源就是,一旦用了它,将来必须还给系统。最常用的资源是动态分配内存,其他常见的资源有文件描述器、互斥锁、图形界面的字形和笔刷、数据库连接以及网络sockets。auto_ptr是个“类指针对象”,就是所谓的智能指针,其析构..
分类:
编程语言 时间:
2016-11-04 02:19:21
阅读次数:
172
编译: gcc test.c -o test -lpthread 逻辑: 主函数 创建 两个线程 1,2 线程1:累加 i ,每次都互斥锁 当i 是3的倍数的时候 发送 改变条件信号给线程2 ; 线程2:当 i <6 时,不断互斥锁操作,当 不是3的倍数的时候等待 调节改变 信号,阻塞线程; 1=1 ...
分类:
编程语言 时间:
2016-10-25 18:40:12
阅读次数:
198
python高级之多线程 本节内容 线程与进程定义及区别 python全局解释器锁 线程的定义及使用 互斥锁 线程死锁和递归锁 条件变量同步(Condition) 同步条件(Event) 信号量 队列Queue Python中的上下文管理器(contextlib模块) 自定义线程池 1.线程与进程定 ...
分类:
编程语言 时间:
2016-10-18 15:54:04
阅读次数:
335
整体通服的架构图如下: 整体思路: 尽量将公共的业务逻辑分拆到单个业务服务器; 公共业务RDB读写分离,提高IO并发量; 单公共业务服务器,是以单机架构还是分布式架构? 方法一:采用单物理机构型,部署Scut,在对内存数据进行修改时加互斥锁,而且要考虑多线程操作时,向redis写缓存队列插入写操作的 ...
分类:
其他好文 时间:
2016-10-16 13:47:56
阅读次数:
134
资源共享 资源共享 当多个线程访问同一块资源时,很容易引发数据错乱和数据安全问题 安全隐患分析: 安全隐患的解决——互斥锁: 互斥锁使用格式 @synchronized(锁对象) { // 需要锁定的代码 } 注意:锁定1份代码只用1把锁,用多把锁是无效的 互斥锁的优缺点: 优点:能有效防止因多线程 ...
分类:
编程语言 时间:
2016-10-09 17:01:07
阅读次数:
210