zoukankan      html  css  js  c++  java
  • dsa

     1 package com.yzy;
     2 
     3 /**
     4  * Synchronized功能说明类
     5  * 
     6  * @author yinzhiyuan
     7  *
     8  */
     9 public class SynchronizedDemo {
    10     // 共享变量
    11     private boolean ready = false;
    12     private int number = 1;
    13     private int result = 0;
    14 
    15     /**
    16      * 写操作
    17      */
    18     public void write() {
    19         ready = true;
    20         number = 2;
    21     }
    22 
    23     /**
    24      *  读操作
    25      */
    26     public void read() {
    27         if (ready) {
    28             result = number * 3;
    29         }
    30         System.out.println("result的结果:" + result);
    31     }
    32 
    33     /**
    34      * 内部线程类
    35      * 
    36      * @author yinzhiyuan
    37      *
    38      */
    39     private class ReadAndWriteThread extends Thread {
    40         private boolean flag;
    41 
    42         // 根据构造方法传入的flag参数来确定线程执行读操作还是写操作
    43         public ReadAndWriteThread(boolean flag) {
    44             this.flag = flag;
    45         }
    46 
    47         @Override
    48         public void run() {
    49             // 如果传入参数flag为true
    50             if (flag) {
    51                 //执行写操作
    52                 write();
    53             }
    54             // 如果传入参数flag为false
    55             else {
    56                 //执行读操作
    57                 read();
    58             }
    59         }
    60     }
    61 
    62     /**
    63      * 在主线程中启动线程执行读、写操作
    64      * 
    65      * @param args
    66      */
    67     public static void main(String[] args) {
    68         SynchronizedDemo synDemo = new SynchronizedDemo();
    69         // 启动线程执行写操作
    70         synDemo.new ReadAndWriteThread(true).start();
    71         // 启动线程执行读操作
    72         synDemo.new ReadAndWriteThread(false).start();
    73 
    74     }
    75 
    76 }
  • 相关阅读:
    机器学习面试问题7
    机器学习面试问题6
    机器学习面试问题5
    机器学习面试问题4
    机器学习面试问题3
    机器学习面试问题2
    机器学习面试问题1
    推荐算法
    机器学习面试问题8
    决策树与随机森林算法
  • 原文地址:https://www.cnblogs.com/yzyqqhr/p/6067649.html
Copyright © 2011-2022 走看看