多线程的一些知识

/**
 * 获取当前线程Thread.currentThread()
 * join()方法,调用其他线程的join()方法时,调用线程将被阻塞,直到被join()方法加入的线程执行完为止
 * setDaemon(true)方法将指定线程设为后台线程
 * isDaemon()方法判断指定线程是否为后台进程
 * 调用Thread.sleep(1)方法让当前线程暂停1ms
 * 调用Thread.yield()方法是暂停一下当前线程,使当前线程转为就绪状态,重新调度()
 * Thread.yield()同Thread.sleep(1)相似,都是使当前线程暂停,
 * 不同点:Thread.sleep(1)使当前线程阻塞,Thread.sleep(1)不会阻塞,还可能继续执行此线程
 * 改变线程优先级:d.setPriority(2)数值越大,优先级越高
 * 同步代码块synchronized(obj){}与同步方法,
 * 同步方法,无须显示指定同步监视器,同步方法的同步监视器是this,也就是该对象本身
 * 同步锁private final ReentrantLock lock = new ReentrantLock();
 * 对同步锁进行加锁lock.lock();
 * 使用finally确保释放锁finally{lock.unlock();}
 * 线程池:系统启动一个新线程的成本是比较高的,因为它涉及与操作系统交互。在这种情况下,使用线程池可以很好的提高性能,
 * 尤其是当程序中需要创建大量生存期很短暂的线程时,更应该考虑使用线程池
 * 1.创建一个具有固定线程数的线程池ExecutorService pool = Executors.newFixedThreadPool(6);
 * 2.向线程池中提交一个线程pool.submit(new DrawThread("甲", account, 800));
 * 3.关闭线程池pool.shutdown();
 */
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值