zoukankan      html  css  js  c++  java
  • 1.多线程同步

    实现多线程

    1.基础Thread类
    2.实现Runnable接口

    描述:

            1.当多个线程访问 MyThread 这个类方法的时候,一排队的方式去进行访问处理(cpu的分配)
            2.一个线程要执行 synchronized 方法修饰的代码:尝试去获取锁,如果拿到锁,则立即去执行。
                如果拿不到锁,则会一直不断的尝试去获取这把锁,直到拿到锁为止,多个线程去尝试去获取这
                把锁,会形成竞争、排队的问题
    1. /**
    2. * 多线程001-线程同步(共享)
    3. * Created by liudan on 2017/5/28.
    4. */
    5. public class MyThread extends Thread {
    6. private int count = 5;
    7. @Override
    8. public synchronized void run() {
    9. count--;
    10. System.err.println("∽"+currentThread().getName()+"count:"+this.count);
    11. }
    12. public static void main(String[] args){
    13. MyThread myThread = new MyThread();
    14. Thread t1 = new Thread(myThread,"myThread-1");
    15. Thread t2 = new Thread(myThread,"myThread-2");
    16. Thread t3 = new Thread(myThread,"myThread-3");
    17. Thread t4 = new Thread(myThread,"myThread-4");
    18. Thread t5 = new Thread(myThread,"myThread-5");
    19. t1.start();
    20. t2.start();
    21. t3.start();
    22. t4.start();
    23. t5.start();
    24. }
    25. }
    输出

    ∽myThread-1count:4 ∽myThread-2count:3 ∽myThread-3count:2 ∽myThread-4count:1 ∽myThread-5count:0
  • 相关阅读:
    更新glibc,删除libc库后,命令行都不能使用了
    进程和线程、协程的区别
    PMP项目管理--资源管理
    清除缓存 echo 1/2/3 > /proc/sys/vm/drop_caches
    gdb malloc方法
    随时更新---能力集
    输出gdb调试信息到文件中
    主动生成core文件 gcore +pid
    PMP项目管理--风险管理
    linux后台程序
  • 原文地址:https://www.cnblogs.com/xxt19970908/p/7337132.html
Copyright © 2011-2022 走看看