java
文章平均质量分 69
coutcin
这个作者很懒,什么都没留下…
展开
-
java nio剖析
java nio的全称是java new I/O,即一个全新的I/O控制系统,它的API的包名为java.nio,是在jdk1.4后引入的。nio之所以为为新,在于它并没在原来I/O的基础上进行开发,而是提供了全新的类和接口,除了原来的基本功能之外,它还提供了以下新的特征: ► 多路选择的非封锁式I/O设施 ►支持文件锁和内存映射 ►支持基原创 2006-08-28 17:57:00 · 5904 阅读 · 1 评论 -
由生产者/消费者问题看JAVA多线程
生产者消费者问题是研究多线程程序时绕不开的问题,它的描述是有一块生产者和消费者共享的有界缓冲区,生产者往缓冲区放入产品,消费者从缓冲区取走产品,这个过程可以无休止的执行,不能因缓冲区满生产者放不进产品而终止,也不能因缓冲区空消费者无产品可取而终止。 解决生产者消费者问题的方法有两种,一种是采用某种机制保持生产者和消费者之间的同步,一种是在生产者和消费者之间建立一原创 2006-09-12 17:00:00 · 13380 阅读 · 11 评论 -
如何通过JNI传递对象执行回调
JNI的全称是java native interface,用来调用某些特定于系统平台或者硬件的操作,但是它只能调用c/c++的代码,若是其它语言代码,只能通过c/c++进行二次调用。关于JNI的完整技术文档,大家可以查看下面这个网址:http://java.sun.com/j2se/1.5.0/docs/guide/jni/ 下面我们看下JNI如何执行回调函数:我们知道在c/c原创 2006-10-25 10:19:00 · 14438 阅读 · 1 评论 -
jdk5.0并发包线程池的实现机制
Jdk在5.0以后提供了一个全新的线程运行控制机制,其实现被封装在java.util.concurrent、java.util.concurrent.atomic、java.util.concurrent.locks三个包中,实现了执行器、异步I/O、线程池、阻塞队列、时间调度、并发控制集合等功能。线程池是我们常用到的功能之一,顾名思义,线程池就是存放线程的缓冲池,在一般的程序设计中,为了提高原创 2007-03-11 20:43:00 · 4142 阅读 · 0 评论 -
为什么Java多线程需要同步?
Java线程共享数据需要同步的根本原因在于Java内存的设计。根据JVM的规范,java的内存既有主存又有线程工作内存,其关系如下图: ( 网上找的图,图中的save应为store) 可以看到,主存是多个线程共享的,线程之间是不能有数据通讯的,它们之间的数据交换只能通过读写主存中的变量来解决,那么线程工作内存是如何与主存原创 2012-02-10 16:18:36 · 4095 阅读 · 0 评论