![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线程
努力的zjk
这个作者很懒,什么都没留下…
展开
-
shared_ptr探究
boost库下shared_ptr的源码shared_ptr类构造函数拷贝构造函数赋值语句私有成员#include <thread>#include <mutex>template <class T>class SharedPtr{public: SharedPtr(T* ptr = nullptr) : _ptr(ptr) , _pRefCount(new int(1)) , _pMutex(new mutex) {原创 2020-11-17 22:19:26 · 285 阅读 · 0 评论 -
项目一补充
快速搜索文档神器之所以快速,是因为我用到了数据库,Sqlite3.将本地的所有文件加载在数据库,通过sql语句来进行文件的搜索那么如何知道本地文件和数据库的文件是一一对应的,这就需要添加一个扫描模块,先扫描本地的文件,再扫描数据库的文件,进行比对,如果数据库文件少了,则进行插入;如果数据库文件多了,则要进行删除。而要操作数据库,则需要把数据库进行封装,并且把数据库里的数据进行封装,作为一个模块来进行操作。...原创 2020-10-24 22:25:17 · 161 阅读 · 0 评论 -
项目二——快速搜索文档神器
#pragma once#include<iostream>using namespace std;#include<string>#include<vector>#include<set>#include<stdarg.h>#include<windows.h>#include<io.h>#include<thread>#include<chrono>#inclu原创 2020-09-25 16:33:34 · 1873 阅读 · 0 评论 -
Linux——线程深入剖析
线程安全多个执行流对临界资源争抢访问,但是不会出现数据二义性。通俗来讲,就是多个线程并发同一段代码时,不会出现不同的结果。线程安全如何实现?同步通过条件判断保证对临界资源访问的合理性互斥通过同一时间对临界资源访问的唯一性实现临界资源访问的安全性互斥的实现互斥锁...原创 2020-06-06 00:40:23 · 266 阅读 · 0 评论 -
Linux中线程的初步认识
线程话不多说,先来一张线程图。轻量化进程线程是进程中的一条执行流,这个执行流在Linux下是通过PCB实现的,因此Linux下的线程其实就是PCB,但是PCB是进程。因为Linux下的PCB,共用同一个虚拟地址空间,相对于传统PCB更加轻量化,因此也被称为轻量化进程。虽然线程共享进程数据,但是也拥有自己的一部分数据。比如:线程ID一组寄存器栈errno信号屏蔽字调度优先级在Linux中,既然线程是轻量化的进程,那么进程就相当于了一个线程组,一个进程中就会有多个线程(即多个PCB原创 2020-05-28 18:53:13 · 151 阅读 · 0 评论