最近在读完陈硕大牛的《Linux多线程服务端编程》以及muduo源码后,对其中的一些实现细节有着十分深刻的印象,尤其是使用std::bind和std::function的回调技术。可以说,这两个大杀器简直就是现代C++的“任督二脉”,甚至可以解决继承时的虚函数指代不清的问题。在此详细叙述使用std: ...
分类:
其他好文 时间:
2018-06-16 19:11:00
阅读次数:
196
直接上代码 写好代码之后使用编译命令 gcc o pthread pthread.c会出现如下错误: 这是由于pthread库不是Linux的标准库,需给编译器指定连接的库,使用gcc o pthread pthread.c lpthread命令,编译器会寻找libpthread.a静态库文件,并且 ...
分类:
编程语言 时间:
2018-06-14 23:15:15
阅读次数:
192
C++在低延迟交易系统中的运用-美国顶尖金融交易公司
分类:
编程语言 时间:
2018-06-01 15:27:02
阅读次数:
154
Linux 多线程同步机制:互斥量、信号量、条件变量,读写锁
分类:
编程语言 时间:
2018-04-07 20:09:30
阅读次数:
216
再次学习之多进程 基本概念的再次学习 线程是程序执行的最小单位(进程是资源管理的最小单位), 线程隶属于某个进程中 进程有自己的数据段、代码段和堆栈段。线程通常叫做轻型的进程,每个线程共享其所附属进程的所有资源,包括打开的文件、内存页面、信号标识及动态分配的内存等 线程和进程比起来很小,因此线程花费 ...
分类:
编程语言 时间:
2017-12-14 04:04:21
阅读次数:
140
在Linux中,多线程的本质仍是进程,它与进程的区别: 进程:独立地址空间,拥有PCB 线程:也有PCB,但没有独立的地址空间(共享) 线程的特点: 1,线程是轻量级进程,有PCB,创建线程使用的底层函数和进程一样,都是clone 2,从内核看进程和线程是一样的,都有各自不同的PCB 3,进程可以蜕 ...
分类:
编程语言 时间:
2017-11-19 22:18:08
阅读次数:
249
分享网盘下载:https://pan.baidu.com/s/1gfNCcXt密码:irfk内容简介本课程从最基础的进程、线程概念讲起逐步深入,通过理论与实践结合的方式,使学员快说掌握linux多线程网络编程技术,并理解技术背后的实现原理。课程详细讲解了网络编程涉及的数据结构、网络协议、编程接口、g..
分类:
编程语言 时间:
2017-11-13 13:37:37
阅读次数:
164
陈硕的《Linux多线程服务端编程:使用muduo C++网络库》中2.2一节中写了一个简单的容量无限的BlockingQueue,其中出队函数enqueue()中,每次添加元素都会调用pthread_cond_signal(封装成了Condition::notify()).然后提了一个问题,如果改 ...
分类:
编程语言 时间:
2017-11-11 17:42:33
阅读次数:
363
好久没写多线程了,工作好几年也没怎么大规模的写过多线程,都是成形的架构里写业务逻辑。偶尔自己写了下,各种踩坑。。。 1.string 不是线程安全的 2.pthread_create 参数传递指针问题 结论:函数传参用值,不要传指针,或者使用 ,额外的队列,线程池 ...
分类:
编程语言 时间:
2017-11-09 14:47:47
阅读次数:
218
线程最大的特点就是资源的共享性,所以也就有了一个难点线程同步,实现线程同步的方法最常用的方法是:互斥锁,条件变量和信号量。接下来就让我们来看下这几种同步的方法。一、互斥锁(Mutex)获得锁的线程可以完成“读-修改-写”的操作,然后释放锁给其它线程,没有获得锁的线..
分类:
编程语言 时间:
2017-10-18 19:50:30
阅读次数:
204