08 2012 档案
摘要:Java.lang.ProcessBuilder类一、概述 ProcessBuilder类是J2SE 1.5在java.lang中新添加的一个新类,此类用于创建操作系统进程,它提供一种启动和管理进程(也就是应用程序)的方法。在J2SE 1.5之前,都是由Process类处来实现进程的控制管理。每个 ProcessBuilder 实例管理一个进程属性集。它的start() 方法利用这些属性创建一个新的 Process 实例。start() 方法可以从同一实例重复调用,以利用相同的或相关的属性创建新的子进程。 (由Runtime.exec()启动。)每个进程生成器(即ProcessBuilder对
阅读全文
摘要:程序大量调用wget,由于程序调用系统的操作命令,process的输出流和错误输出流会向缓冲区数据,长时间运行时,当缓冲区写满了,就会出现僵死进程现象。我猜wget加上 -q 参数应该可以解决这个问题jdk1.6有一个查看线程CPU使用率的工具——jstack -p [pid] 比较系统pstatck -p 好多了还有文件处理发生太多导致同事的处理程序处理不过来导致,too many open files。看来写程序还是要考虑很多问题的,特别是和系统相管的。
阅读全文
摘要:pthread中提供的锁有:pthread_mutex_t, pthread_spinlock_t, pthread_rwlock_t。 pthread_mutex_t是互斥锁,同一瞬间只能有一个线程能够获取锁,其他线程在等待获取锁的时候会进入休眠状态。因此pthread_mutex_t消耗的CPU资源很小,但是性能不高,因为会引起线程切换。 pthread_spinlock_t是自旋锁,同一瞬间也只能有一个线程能够获取锁,不同的是,其他线程在等待获取锁的过程中并不进入睡眠状态,而是在CPU上进入“自旋”等待。自旋锁的性能很高,但是只适合对很小的代码段加锁(或短期持有的锁),自旋锁对CPU的占
阅读全文