这一周都做了什么?
主要是重构,但是重构的结构早就写好了,大部分的时候都是在无聊的分离UI和逻辑。
学到的新东西有哪些?
因为有过高的计算量和数据操作,因此开始处理多线程,开始写线程中通讯。
因为要发布版本,开始写shell和鼓捣ant.
说一下线程的一些思路。说来惭愧,大学的时候明明学过操作系统,现在居然连信号量这种最基础的东西都忘记了。多线程其实并不复杂,唯一麻烦点得就是线程间的通讯...
分类:
其他好文 时间:
2015-01-16 22:23:42
阅读次数:
192
void os_sem_init ( OS_ID semaphore, /* The semaphore object to initialize */ U16 token_count ); /* Initial number of tokens */参数semaphore的类型必须为...
分类:
其他好文 时间:
2015-01-15 17:36:15
阅读次数:
170
现在,遇到了串口调试的问题。串口传输有两种方案:1)中断函数接收完完整的frame之后用二值信号量触发阻塞的解析数据进程;2)新建队列,中断中将接收的数据send到队列,解析进程读队列。
分类:
其他好文 时间:
2015-01-13 14:03:34
阅读次数:
212
对于信号量,可以认为是一个仓库,有两个概念,容量和当前的货物个数。P操作从仓库拿货,如果仓库中没有货,线程一直等待,直到V操作,往仓库里添加了货物,为了避免P操作一直等待下去,会有一个超时时间。V操作往仓库送货,如果仓库满了,线程等待,直到有P操作,从仓库中拿走货物,有空的位置。创建信号量,设置容量...
分类:
其他好文 时间:
2015-01-12 22:29:23
阅读次数:
228
sem_unlink在man手册里有这么一段话:sem_unlink() removes the named semaphore referred to by name. The semaphore name is removed immediately. The semaphore is...
分类:
其他好文 时间:
2015-01-10 23:31:17
阅读次数:
271
介绍 本章主要说下基于内核模式构造的线程同步方式,事件,信号量。目录一:理论二:WaitHandle三:AutoResetEvent四:ManualResetEvent五:总结一:理论我们晓得线程同步可分为,用户模式构造和内核模式构造。内核模式构造:是由windows系统本身使用,内核对象进行调度....
分类:
编程语言 时间:
2015-01-10 08:52:19
阅读次数:
289
线程同步在现实生活中,有些东西就必须是按顺序执行的,只有我完成了以后,你才能在我的劳动成果上接着干;不能我还没有完成,你就开始干活了。这就是线程同步最直白的解释了。在进行程序设计时,亦是如此。线程同步,同步的是什么?它同步的是对共享资源(内存区域,公共变量等)或者临界区域的访问。有的时候,这些共享 ...
分类:
编程语言 时间:
2015-01-07 14:30:27
阅读次数:
135
本文将阐述一下信号量的作用及经典例子,当中包括“《越狱》寄信”,“家庭吃水果”,“五子棋”,“接力赛跑”,“读者写者”,“四方恋爱”等首先,讲semWait操作(P操作)和semSignal操作(V操作)的一些基本原则。(接下来同意称为P,V操作)1. P操作,s - -,if(sP2->P3->P...
分类:
系统相关 时间:
2015-01-07 10:40:10
阅读次数:
198
一 何为信号量?
简单来说就是控制访问资源的数量,比如系统有两个资源可以被利用,同时有三个线程要访问,只能允许两个线程访问,第三个应当等待资源被释放后再访问。
注意:再GCD中,只有调度的线程在信号量不足的时候才会进入内核态进行线程阻塞...
分类:
其他好文 时间:
2015-01-06 21:39:57
阅读次数:
158
【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet 或 .../gentleliu,文章仅供学习交流,请勿用于商业用途】
system V信号量操作类似于posix信号量,但system V信号量的操作要复杂得多,posix信号量使用步骤为sem_init(sem_open)-->sem_wait(sem_post) --> sem_close详见上一...
分类:
系统相关 时间:
2015-01-05 20:34:59
阅读次数:
260