个人对线程基础的一些理解

1、一个程序有多个进程,一个进程有多个线程,而线程分为单线程和多线程
2、单线程指的是每个线程按顺序执行某个任务
3、多线程指的是每个线程执行不同的任务,并且可以与其它线程并发执行
4、在线程程序中,至少有一个线程,那就是主线程,而其他的线程都叫做主线程的子线程
以下就是一个主线程的创建和启动
class A extends Thread{
public void run(){

}
}
线程的代码必须放在run方法里执行

在另一个类中,将线程放入可执行的队列中,等待系统调度执行
A a = new A();
a.start();

声明一个实现 Runnable 接口的类,并实现 run() 方法。
class mythread implements Runnable{
public void run( ) {/* 实现该方法*/ }
}
如果对象是Runnable,那只说明它有run( )方法


5、线程的同步和异步
线程本身是异步的(并行)
在某些地方需要让线程同步
线程的同步指的是串行,
异步指的是并行
6、如何实现线程同步
1、锁住某个代码块
synchronized(需要同步的对象){
需要同步的代码
}
2、锁住某个方法块
public synchronized void quqian(int n){

}
3、使用锁对象
//创建锁
Lock l = new ReentrantLock();

//上锁
l.lock();
需要上锁的代码块

//解锁
l.unlock();

7、线程的控制
1、线程的暂停和停止模型
static boolean isPause = false;//是否暂停
boolean isStop = false;//是否停止

public void run(){

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值