上一页 1 2 3 4 5 6 7 8 ··· 11 下一页
摘要: 不用循环控制、条件控制、三目运算符 实现,不考虑溢出 计算100! 阅读全文
posted @ 2019-11-07 15:47 sfdevs 阅读(152) 评论(0) 推荐(0)
摘要: 定义常量 define 是一个Compile Time的概念,它的生命周期止于编译器期,它存在与程序的代码段,在实际程序中它只是一个常数、一个命令中的参数、并没有实际的存在 const常量存在于程序的数据段,并在堆栈分配了空间。const常量是一个Run Time的概念,它在程序中确确实实地存在并可 阅读全文
posted @ 2019-11-06 13:37 sfdevs 阅读(143) 评论(0) 推荐(0)
摘要: 前提 大部分情况都是因为当前系统的内核不满足驱动文件的编译条件,可以通过驱动文件中的文档来确定是否要升级内核还是降级内核, 对于升级内核只需要下载指定的内核版本安装即可,降级内核(暂时不清楚是否会引发其他问题) 找到适合自己的内核 github 搜索 RTL88x2BU,会出现很多大神维护的驱动文件 阅读全文
posted @ 2019-10-18 18:18 sfdevs 阅读(2091) 评论(0) 推荐(0)
摘要: ``` include include include include include std::once_flag g_flag; class Singleton { private: Singleton(){} static void CreateInstance() { pToSelf = n 阅读全文
posted @ 2019-10-17 16:32 sfdevs 阅读(124) 评论(0) 推荐(0)
摘要: 线程池的作用 用于执行大量相对短暂的任务 计算密集型任务 线程 = CPU个数 I/O密集型任务 线程 CPU个数 当任务增加的时候能够动态的增加线程池中线程的数量直到达到一个阈值 当任务执行完毕的时候,能够动态的销毁线程池中的线程 该线程池的实现本质上也是生产者与消费者模型的应用。生产者线程向任务 阅读全文
posted @ 2019-10-12 18:59 sfdevs 阅读(158) 评论(0) 推荐(0)
摘要: 条件变量 当一个线程互斥地访问某个变量时,它可能发现在其它线程改变状态之前,它什么也做不了 例如一个线程访问队列时,发现队列为空,它只能等待,只到其它线程将一个节点添加到队列中。这种情况就需要用到条件变量 条件变量和互斥锁为什么要配合使用? 1. 条件本身就是公共资源,多个线程同时方式时,必须使用互 阅读全文
posted @ 2019-10-12 14:31 sfdevs 阅读(196) 评论(0) 推荐(0)
摘要: POSIX信号量相关函数 sem_open sem_close sem_unlink sem_init sem_destroy sem_wait sem_post POSIX互斥锁相关函数 pthread_mutex_init pthread_mutex_lock pthread_mutex_unl 阅读全文
posted @ 2019-10-10 19:25 sfdevs 阅读(225) 评论(0) 推荐(0)
摘要: 线程属性 初始化与销毁属性 获取与设置分离属性 获取与设置栈大小 获取与设置栈溢出保护区大小 获取与设置线程竞争范围 获取与设置调度策略 获取与设置继承的调度策略 获取与设置调度参数 获取与设置并发级别   仅在N:M线程模型中,设置并发级别,给内核一个提示;表示提供给定级别数量 阅读全文
posted @ 2019-10-10 16:44 sfdevs 阅读(164) 评论(0) 推荐(0)
摘要: POSIX线程库相关介绍   与线程有关的函数构成了一个完整的系列,绝大多数函数的名字都有“pthread_”开头   要使用这些函数库,都需要加入头文件“”, 链接的时候需要链接“ lpthread” pthread_create pthread_exit 阅读全文
posted @ 2019-10-09 17:10 sfdevs 阅读(150) 评论(0) 推荐(0)
摘要: 什么是线程   在一个程序里的一个执行路线就叫做线程(thread),更准确的定义是:线程是“一个进程内部的控制序列”   一切进程至少都有一个执行线程 进程与线程   进程是资源竞争的基本单位   线程是程序执行的最小 阅读全文
posted @ 2019-10-08 17:51 sfdevs 阅读(220) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 ··· 11 下一页