一、简单说明 线程间通信:在1个进程中,线程往往不是孤立存在的,多个线程之间需要经常进行通信 线程间通信的体现 1个线程传递数据给另1个线程 在1个线程中执行完特定任务后,转到另1个线程继续执行任务 线程间通信常用方法 - (void)performSelectorOnMainThread:(SEL ...
分类:
移动开发 时间:
2016-10-24 14:01:04
阅读次数:
220
CountDownLatch,一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。 主要方法 public CountDownLatch(int count);构造方法参数指定了计数的次数 public void countDown(); countDown方法,当 ...
分类:
编程语言 时间:
2016-10-24 09:52:51
阅读次数:
280
最近要做个东西,没优化之前。跑一次要11个小时。跑的时候看cpu,内存都有富裕,就考虑用python 多线程来做。 多线程要是能省时间,也是省在等待IO 的时候,让机器做点其他的事。否则如果只是计算循环1+1=2 ,用多线程也不会提高效率,因为cpu很忙。每起一个线程,就会占一块内存,线程也不能起多 ...
分类:
编程语言 时间:
2016-10-23 12:14:20
阅读次数:
266
Android之中,只有主线程当中能修改UI 的值,WorkThread中不能修改。因此在WorkThrean中运行比较耗时的程序,即在WorkThread中获取数据,然后将数据发送的主线程,再修改UI。 根据以上的思路来理解Android中个线程之间的通讯。 1、新建个TestHandler类,继 ...
分类:
移动开发 时间:
2016-10-21 20:15:03
阅读次数:
231
上一篇《秒杀多线程第三篇原子操作 Interlocked系列函数》中介绍了原子操作在多进程中的作用,现在来个复杂点的。这个问题涉及到线程的同步和互斥,是一道非常有代表性的多线程同步问题,如果能将这个问题搞清楚,那么对多线程同步也就打下了良好的基础。 程序描述: 主线程启动10个子线程并将表示子线程序 ...
分类:
编程语言 时间:
2016-10-20 21:35:59
阅读次数:
217
1、Service 是否在 main thread 中执行, service 里面是否能执行耗时的操作?默认情况,如果没有显示的指 servic 所运行的进程, Service 和 activity 是运行在当前 app 所在进程的 main thread(UI 主线程)里面。service 里面不 ...
分类:
移动开发 时间:
2016-10-17 13:24:24
阅读次数:
276
1.this.Close(); 只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退出; 2.Application.Exit(); 强制所有消息中止,退出所有的窗体,但是若有托管线程(非主线程),也无法干净地退出; 3.Application.Exit ...
刚开始学习Service的时候以为它是一个线程的封装,也可以执行耗时操作。其实不然,Service是运行在主线程的。直接执行耗时操作是会阻塞主线程的。长时间就直接ANR了。我们知道Service可以执...
分类:
移动开发 时间:
2016-10-15 11:50:47
阅读次数:
291
由于项目的需要,最近几天一直在做串口和数据库。由于C#使用的时间不长,所以在编写代码和调试的过程中总是遇到意想不到的问题,比如在使用串口接收数据的时候,在接收数据事件中想把接收的数据放入一个textbox作显示,但是明明非常简单的代码,在编译的时候总是提示有错误。后来查看网上资料,才知道C#还有委托 ...
分类:
编程语言 时间:
2016-10-14 20:15:40
阅读次数:
124
线程和进程的区别(1)线程共享内存空间;进程的内存是独立的 (2)同一个进程的线程之间可以直接交流;两个进程想通信,必须通过一个中间代理来实现 (3)创建新线程很简单; 创建新进程需要对其父进程进行一次克隆 (4)一个线程可以控制和操作同一进程里的其他线程;但是进程只能操作子进程 (5)改变主线程( ...
分类:
编程语言 时间:
2016-10-14 17:26:03
阅读次数:
133