摘要: [TOC] 1.1 简介 在本章中,主要介绍 线程池(ThreadPool) 的使用;在C 中它叫 ,在使用线程池之前首先我们得明白一个问题,那就是为什么要使用线程池。其主要原因是 创建一个线程的代价是昂贵的 ,创建一个线程会消耗很多的系统资源。 那么线程池是如何解决这个问题的呢?线程池在初始时会自 阅读全文
posted @ 2018-08-06 20:43 InCerry 阅读(4928) 评论(3) 推荐(4) 编辑
摘要: [TOC] 1.1 简介 本章介绍在C 中实现线程同步的几种方法。因为多个线程同时访问共享数据时,可能会造成共享数据的损坏,从而导致与预期的结果不相符。为了解决这个问题,所以需要用到线程同步,也被俗称为“加锁”。但是 加锁绝对不对提高性能,最多也就是不增不减 ,要实现性能不增不减还得靠高质量的 同步 阅读全文
posted @ 2018-08-03 21:38 InCerry 阅读(7416) 评论(5) 推荐(7) 编辑
摘要: C 多线程编程系列(二) 线程基础 [TOC] 1.1 简介 线程基础主要包括线程创建、挂起、等待和终止线程。关于更多的线程的底层实现,CPU时间片轮转等等的知识,可以参考 一书中关于进程和线程的章节,本文不过多赘述。 1.2 创建线程 在C 语言中,创建线程是一件非常简单的事情;它只需要用到 命名 阅读全文
posted @ 2018-08-01 21:29 InCerry 阅读(3501) 评论(2) 推荐(9) 编辑
摘要: [TOC] 1. 前期预备知识 1.1 串口通讯电路图 ![image_1bqjjhr9leo112efe02df51fp.png 25kB][1] 从上图可见,CC2530芯片通过P0端口的P0.1和P0.2引脚进行串口通讯。这个实验当中对于端口的操作也主要就是P0端口。 1.2 实验相关寄存器 阅读全文
posted @ 2018-07-31 19:47 InCerry 阅读(1689) 评论(0) 推荐(0) 编辑
摘要: [TOC] 1. 前期预备知识 1.1 定时器中断触发 本次实验需关注的中断寄存器。 ![image_1bqbsemrp897bm6hhja68i9vp.png 497.2kB][1] 在本次实验中,分别会使用T1和T3定时器完成功能,所以我们需要注意上图中标注出的中断寄存器。 T1定时器:16位定 阅读全文
posted @ 2018-07-31 19:42 InCerry 阅读(5311) 评论(0) 推荐(0) 编辑
摘要: [TOC] 1.前期预备知识 1.1 新大陆Zigbee模块按键电路图 ![image_1bq9qhq7u5b6g1od316api579.png 35.8kB][1] 由上图可知,Zigbee模块的SW1按钮连接在P1.2端口上,当SW1导通,P1.2电平从3.3V被拉低接地。所以P1.2输入模式 阅读全文
posted @ 2018-07-31 19:36 InCerry 阅读(6292) 评论(0) 推荐(0) 编辑
摘要: [TOC] 1.前期预备知识 1.1 新大陆ZigBee模块LED灯电路 ![image_1bq999vhb104s1v6249bq031jjg9.png 32.1kB][1] 从上两的两个电路可知 1.LED1连接在LED LINK上,而LED LINK是从CC2530芯片的P1.0端口引出,同样 阅读全文
posted @ 2018-07-31 19:30 InCerry 阅读(4896) 评论(2) 推荐(0) 编辑
摘要: [TOC] 系列大纲 目前只整理到第二章,线程同步,笔者后面会慢慢更新,争取能把这本书中精华的知识都分享出来。 "C 多线程编程系列(一) 简介" "C 多线程编程系列(二) 线程基础" "C 多线程编程系列(三) 线程同步" "C 多线程编程系列(四) 使用线程池" "C 多线程编程系列(五) 使 阅读全文
posted @ 2018-07-31 13:10 InCerry 阅读(4446) 评论(1) 推荐(3) 编辑
摘要: [TOC] 一、前言 本教程是入门基础教程,主要是笔者在项目中使用MongoDB .Net官方驱动对MongoDB内嵌文档的操作时遇到了很多不方便的情况,踩了很多的坑,所以单独整理出来一篇文章,来讲一讲笔者踩坑的过程。 笔者水平有限,如有错误还请批评指正! 1. 运行环境 .net版本 .Net F 阅读全文
posted @ 2018-07-30 13:49 InCerry 阅读(3506) 评论(4) 推荐(6) 编辑
摘要: [TOC] 因项目需要,对于部分控制器需要实现伪静态方便搜索引擎优化(SEO),过程比较曲折,简单的记录一下。 1.什么是伪静态?为什么要实现伪静态? 伪静态:动态网页通过重写URL的方法实现去掉动态网页的参数,但在实际的网页目录中并没有必要实现存在重写的页面。 例如:我们当访问地址http://w 阅读全文
posted @ 2018-07-30 13:47 InCerry 阅读(2569) 评论(2) 推荐(0) 编辑