您的位置:首页 > 理论基础 > 计算机网络

VMware虚拟机网络设置――三种方式详解

2016-03-06 21:33 549 查看
package com.knowledge.Test;

/**

 * 继承Thread类

 * @author job

 *

 */

public class syn_gou extends Thread{

    //余额

    int yu;

    //总金额

    int count = 1000;

    //每次索取金额

    int getmoney = 200;

    //run方法是Thread类的线程执行体

    public void run(){

        //实现同步(没有同步则每次线程取钱混乱)

        synchronized(this){

            //如果总金额大于等于所取金额向下执行

            if(count >= getmoney){

                //计算余额

                yu = count - getmoney;

                //改变取完后的金额

                count = yu;

                System.out.println(Thread.currentThread().getName()+"取钱余额:"+getmoney+"余额为:"+yu);

            }else{

                System.out.println("余额不足!");

            }

        }

    }

}

 

 

package com.knowledge.Test;

/**

 * 测试类

 * @author job

 *

 */

public class syn_test {

   

   

    public static void main(String[] args){

        //syn_gou类的实例

        syn_gou s = new syn_gou();

        //创建6条线程

        Thread t  = new Thread(s);

        Thread t1 = new Thread(s);

        Thread t2 = new Thread(s);

        Thread t3 = new Thread(s);

        Thread t4 = new Thread(s);

        Thread t5 = new Thread(s);

       

        //启动线程

        t. start();

        t1.start();

        t2.start();

        t3.start();

        t4.start();

        t5.start();

        //启动的这6个线程具体先执行那个是系统内部来控制,在程序中我们不能控制

        //具体那个先执行是看那个先抢占到cpu,先抢到的先执行。所以会出现测试结果中的

        /*

           Thread-1

           Thread-3

           Thread-2

           Thread-5

           Thread-4

           也可以理解为随机的

        */

    }

}

 

 

测试结果:

        Thread-1取钱余额:200余额为:800

        Thread-3取钱余额:200余额为:600

        Thread-2取钱余额:200余额为:400

        Thread-5取钱余额:200余额为:200

        Thread-4取钱余额:200余额为:0

        余额不足!

 

 

 

 

如果没有synchronized实现同步:

(有很多种不正确的结果这里只列出3种做参考)

 

Thread-1取钱余额:200余额为:800

Thread-3取钱余额:200余额为:600

Thread-5取钱余额:200余额为:400

Thread-2取钱余额:200余额为:200

Thread-6取钱余额:200余额为:0

Thread-4取钱余额:200余额为:-200

 

Thread-1取钱余额:200余额为:800

Thread-3取钱余额:200余额为:400

Thread-2取钱余额:200余额为:400

Thread-6取钱余额:200余额为:200

Thread-4取钱余额:200余额为:0

余额不足!

 

Thread-2取钱余额:200余额为:600

Thread-1取钱余额:200余额为:600

Thread-3取钱余额:200余额为:400

Thread-4取钱余额:200余额为:200

Thread-5取钱余额:200余额为:0

余额不足!

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: