不同于c++等语言的调用操作系统的线程调控机制来实现多线程,java语言内置了多线程的api包,因此可以更加方便的使用多线程技术。(1)线程的问题。进程是程序的一次动态执行过程,它对应了从代码加载、执行至执行完毕的一个完整过程,这个过程也是进程本身从产生、发展至消亡的过程。线程是比进程更小的单位,一...
分类:
编程语言 时间:
2014-04-29 22:09:12
阅读次数:
689
CPU(工厂) 进程(车间) 线程(工人)一个进程代表一个应用程序
CPU总是运行一个进程,其它进程处于非运行状态.一个进程可以包含多个线程.线程与线程之间可以共享进程的内存区域.打开一个应用程序,系统会给我们创建一个线程,称为主线程
管理主界面的UI与内部循环机制(与界面相关的东西必须放在主线程中...
分类:
移动开发 时间:
2014-04-29 20:04:57
阅读次数:
657
class TestThread { static void Main() {
//使用WaitHandle静态方法阻止一个线程,直到一个或多个同步对象接收到信号 WaitHandle[] waitHa...
分类:
编程语言 时间:
2014-04-29 15:55:22
阅读次数:
557
转载http://blog.csdn.net/luxiaoyu_sdc/article/details/6458872一般程序崩溃可以通过debug,找到程序在那一行代码崩溃了,最近编一个多线程的程序,都不知道在那发生错误,多线程并发,又不好单行调试,终于找到一个比较好的方法来找原因,通过生成map...
分类:
其他好文 时间:
2014-04-29 10:38:46
阅读次数:
394
运行结果:ProAndCon0 produced1 producedconsumed 02
produced3 producedconsumed 1consumed 2consumed 34 producedconsumed 45
producedconsumed 5转载自:http://www.o...
分类:
编程语言 时间:
2014-04-28 18:11:11
阅读次数:
531
本文将要介绍的内容都是Java5中的新特性,一个是倒计时记数器---CountDownLatch,另一个是用于线程间数据交换的Exchanger.一.CountDownLatch1.什么是CountDownLatch?倒计时计数器,调用CountDownLatch对象的CountDown()方法就将...
分类:
编程语言 时间:
2014-04-28 12:49:39
阅读次数:
563
说起共享内存,一般来说会让人想起下面一些方法:1、多线程。线程之间的内存都是共享的。更确切的说,属于同一进程的线程使用的是同一个地址空间,而不是在不同地址空间之间进行内存共享;2、父子进程间的内存共享。父进程以MAP_SHARED|MAP_ANONYMOUS选项mmap一块匿名内存,fork之后,其...
分类:
系统相关 时间:
2014-04-28 12:30:07
阅读次数:
720
1.什么是阻塞队列?所谓队列,遵循的是先进先出原则(FIFO),阻塞队列,即是数据共享时,A在写数据时,B想读同一数据,那么就将发生阻塞了.看一下线程的四种状态,首先是新创建一个线程,然后,通过start方法启动线程--->线程变为可运行可执行状态,然后通过数据产生共享,线程产生互斥---->线程状...
分类:
编程语言 时间:
2014-04-28 12:18:12
阅读次数:
513
NSOperationQueue是一套基于Objective-c语言的API。GCD与NSOperationQueue的优缺点:NSOperationQueue:比较安全GCD:没有NSOperationQueue安全,但使用起来简单,快速,还提供了一些操控底层的方法。实际开发中还是以GCD为主。N...
分类:
移动开发 时间:
2014-04-28 12:06:08
阅读次数:
611
arc其实并不是所谓的垃圾回收机制,其实arc只是编译器的一种特性,编译器会在编译阶段插入相应的内存管理代码,以实现自动的内存管理,这样就减少了因为程序员的一时疏忽或者项目过大而失误从而造成内存泄露,因为是编译器自动完成的代码插入所以arc的效率要高于垃圾回收机制.在arc机制下dealloc中会由...
分类:
其他好文 时间:
2014-04-28 11:50:10
阅读次数:
463