• 多线程---同步函数(转载)


    /**
    同步有两种方式:一、同步代码块;二、同步函数
    使用synchronized注意只要对需要同步的代码进行同步,多余的不用
    如何找问题:
    1、明确哪些代码是多线程运行代码
    2、明确共享数据
    3、明确多线程运行代码中哪些语句是操作共享数据的。
    **/
    class Bank
    {
    private int sum;
    //Object obj = new Object();
    public synchronized void add(int n)//这就是同步函数,简化了代码
    {
    //synchronized(obj)
    //{
    sum = sum + n;
    try{Thread.sleep(10);}catch(Exception e){}
    System.out.println("总计:"+sum);
    //}
    }
    }
    class Cus implements Runnable
    {
    private Bank b = new Bank();
    public void run()
    {
    for(int x=0; x<3; x++)
    {
    b.add(100);
    }
    }
    }
    class ThreadBank
    {
    public static void main(String[] args)
    {
    Cus c = new Cus();
    Thread t1 = new Thread(c);
    Thread t2 = new Thread(c);
    t1.start();
    t2.start();
    }
    }
  • 相关阅读:
    1004: 画图
    1002: 数字排序问题
    1003: 相邻数对问题
    1001: 图像旋转问题
    1000: 数塔
    springday05-go1
    springday04-go2
    springday04-go1
    springday03-go2
    Android—PopupWindow的简单使用
  • 原文地址:https://www.cnblogs.com/kevinfuture/p/4283644.html
Copyright © 2020-2023  润新知