易截截图软件、单文件、免安装、纯绿色、仅160KB

Java线程:新特征 信号量

Java线程:新特征-信号量
 
Java的信号量实际上是一个功能完毕的计数器,对控制一定资源的消费与回收有着很重要的意义,信号量常常用于多线程的代码中,并能监控有多少数目的线程等待获取资源,并且通过信号量可以得知可用资源的数目等等,这里总是在强调“数目”二字,但不能指出来有哪些在等待,哪些资源可用。
 
因此,本人认为,这个信号量类如果能返回数目,还能知道哪些对象在等待,哪些资源可使用,就非常完美了,仅仅拿到这些概括性的数字,对精确控制意义不是很大。目前还没想到更好的用法。
 
下面是一个简单例子:
 
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Semaphore;
/**
* Java线程:新特征-信号量
*
* @author leizhimin 2009-11-5 13:44:45
*/
public class Test {
        public static void main(String[] args) {
                MyPool myPool = new MyPool(20);
                //创建线程池
                ExecutorService threadPool = Executors.newFixedThreadPool(2);
                MyThread t1 = new MyThread("任务A", myPool, 3);
                MyThread t2 = new MyThread("任务B", myPool, 12);
                MyThread t3 = new MyThread("任务C", myPool, 7);
                //在线程池中执行任务
                threadPool.execute(t1);
          &nbs


相关文档:

java中== 与equals的区别

public class test1
{
 public static void main(String[] args){
  //== 与equals的区别
  //1.null的比较:只能用==
  System.out.println("1.null的比较:只能用==");
  Object o1=null,o2=null;
  System.out.println(null==null&&o1==null& ......

Java操作Excel方法比较

1. Java读取Excel方式对比
在Java中读写MS Excel文件主要有两种典型的方法
l         Java-To-Com的方式:
(1)   jCom
(2)   Jacob
l         直接Excel文件读写
(3)   jExcel
(4)&nbs ......

Java线程:并发协作 生产者消费者模型

Java线程:并发协作-生产者消费者模型
 
对于多线程程序来说,不管任何编程语言,生产者和消费者模型都是最经典的。就像学习每一门编程语言一样,Hello World!都是最经典的例子。
 
实际上,准确说应该是“生产者-消费者-仓储”模型,离开了仓储,生产者消费者模型就显得没有说服力了。
对于此模 ......

Java线程:新特征 有返回值的线程

Java线程:新特征-有返回值的线程
 
在Java5之前,线程是没有返回值的,常常为了“有”返回值,破费周折,而且代码很不好写。或者干脆绕过这道坎,走别的路了。
 
现在Java终于有可返回值的任务(也可以叫做线程)了。
 
可返回值的任务必须实现Callable接口,类似的,无返回值的任务必须Ru ......

Java线程:新特征 锁(下)

Java线程:新特征-锁(下)
 
在上文中提到了Lock接口以及对象,使用它,很优雅的控制了竞争资源的安全访问,但是这种锁不区分读写,称这种锁为普通锁。为了提高性能,Java提供了读写锁,在读的地方使用读锁,在写的地方使用写锁,灵活控制,在一定程度上提高了程序的执行效率。
 
Java中读写锁有个接口java ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号