API解读:Thread
2008-01-05 20:02:25 来源:WEB开发网线程是一个和平台关系比较密切的概念,这里我们也不能看出它的具体实现,只能看一下它的表现了.
public class Thread implements Runnable
public final static int MIN_PRIORITY = 1;
public final static int NORM_PRIORITY = 5;
public final static int MAX_PRIORITY = 10;
//以上三个是表示线程的优先级的,默认的都是和父线程具有相同的优先级
public static native Thread currentThread();
//获得当前运行线程的线程实例,注重这是个静态方法
public static native void yield();
//当前线程主动放弃执行,让其他线程可以运行,这个是雷锋精神
public static native void sleep(long millis) throws InterruptedException;
//当前线程自己休眠一会儿,过了这段时间后重新回到可执行状态,有时候为了等别人就自己先睡一会儿
//不过这一觉睡多长时间是比较难确定的
public static void sleep(long millis, int nanos) throws InterruptedException
//这个方法有点多余,把后面的纳秒四舍五入而已,最终的效果或者是sleep(millis)和sleep(millis+1).
构造函数
public Thread();
public Thread(Runnable target)//这个是最常用的构造函数
public Thread(ThreadGroup group, Runnable target)//不是很关心输入哪个线程组
public Thread(String name) //我们似乎不关心线程的名字
public Thread(ThreadGroup group, String name)
public Thread(Runnable target, String name)
public Thread(ThreadGroup group, Runnable target, String name)
public Thread(ThreadGroup group, Runnable target, String name,long stackSize)
public synchronized native void start();
//运行线程用start方法,不知道里面怎么实现了,不过会调用run方法
public void run() {
if (target != null) {
target.run();
}
}
可以看出,假如没有target参数,这个线程什么也不做.
//下面几个方法已经不用了,我也不是很清楚为什么,也不用去管这个了.
public final void stop()
public final synchronized void stop(Throwable obj)
public final void suspend()
public final void resume()
public void interrupt()
//中断这个线程,这个方法除了设置中断状态位,不知道还做了什么
public static boolean interrupted() {
return currentThread().isInterrupted(true);
}
//是否被中断,重置中断状态
public boolean isInterrupted() {
return isInterrupted(false);
}
//是否被中断
private native boolean isInterrupted(boolean ClearInterrupted);
public void destroy() {
throw new NoSUChMethodError();
}
public final native boolean isAlive();
//线程是否还活着,出生了但还没死
public final void setPriority(int newPriority)
public final void setName(String name)
public final String getName()
public final ThreadGroup getThreadGroup()
public static int activeCount() //获得当前线程组获得线程数
public static int enumerate(Thread tarray[]) //将活动线程拷贝到一个数组
public native int countStackFrames();
public final synchronized void join(long millis) throws InterruptedException//等待这个线程死,这个家伙没有耐心,过了一段时间就不等了.
public final synchronized void join(long millis, int nanos) throws InterruptedException //没什么用的方法
public final void join() throws InterruptedException //这个家伙很有耐心,为了拿遗产,一直等着他老爸死才肯罢休.
public final void setDaemon(boolean on)
public final boolean isDaemon()
public final void checkaccess() //这个似乎不应该public
public String toString()
- ››解读百度优化指南:白帽SEO的“正规性”操作
- ››解读Android ConnctBot-2 connectbot summary
- ››解读Android ConnectBot-1 telnet、ssh常识
- ››解读Groupon团购模式背后的营销奥秘
- ››解读百度首份《搜索引擎优化指南》
- ››解读iPhone平台一些优秀的设计思路
- ››解读Windows 7的XP模式与MED-V虚拟化
- ››解读 iPhone OS4.0:系统流畅 未感觉显示延误
- ››解读Office 2010新概念:自定义Ribbon
- ››解读SiteFactory图片防盗链
- ››解读SiteFactory修改成GB2312的编码
- ››解读乐鱼影音盒视频片段搜索功能
更多精彩
赞助商链接