API解读:Thread

来源:互联网 发布:c语言面向对象编程 编辑:程序博客网 时间:2024/05/17 10:29

 线程是一个和平台关系比较密切的概念,这里我们也不能看出它的具体实现,只能看一下它的表现了.

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()

 

资料引用:http://www.knowsky.com/370484.html

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 剑三程序不兼容怎么办 玩无主之地卡怎么办 平台老板跑路了怎么办 qq在苹果下载不了怎么办 下载速度快上传速度慢怎么办 苹果7开网页慢怎么办 为什么浏览器下载视频速度慢怎么办 机连WLAN网速慢怎么办 会声会影卸载后无法重新安装怎么办 电视空间不足无法卸载怎么办 堡垒之夜下载慢怎么办 手机网盘下载速度慢怎么办插件 笔记本电脑显示连接不可用怎么办 蓝魔手机充电慢怎么办 360f4手机充电慢怎么办 vivo卡了怎么办小窍门 白色衣服用84泡后变黄怎么办 用祛斑霜脱皮了怎么办 用祛斑霜脸一直蜕皮怎么办 吃热的就流鼻涕怎么办 键盘qaz失灵其他都没事怎么办 时时彩代理抓了怎么办 6p升级ios11卡顿怎么办 微信弄没了又换号了怎么办 快手账号异常请去激活怎么办 九游账号被转移怎么办 绝地求生刺激战场闪退怎么办 qq回执编号忘了怎么办 电脑开机要用户名和密码怎么办 电脑忘记用户名和密码怎么办 微信账号密码忘了怎么办 开发者账号密保忘记怎么办 华为账号忘记密保问题怎么办 fiyme账号忘记密保怎么办 id忘了密保问题怎么办 vivo账号密码忘记了怎么办 步步高账号密码忘了怎么办 步步高手机账号密码忘了怎么办 康佳电视通行证忘了怎么办 尚游通行证忘了怎么办 深圳免限行通行证忘了截图怎么办