Java线程同步如何在不同线程中调用

开发 后端
Java线程同步如何才能更好的学习呢?其实在不断的进行学习中我们还是需要注意源代码的重要性。希望大家有所帮助。

Java线程同步需要我们大家不断的学习,但是在学习的时候有些重要的代码还是需要注意,下面我们就来详细的看看Synchronized,顾名思义,代表Java线程同步。那么,在java编程中如何使用它呢?

我们首先来看这样一个情况:对于同一个变量synDemo,我们分别在2个不同的线程中调用synDemo.synMethord1()与synDemo.synMethord2()。

 

  1. package com.cnblogs.gpcuster;/** * * @author Aaron.
    Guo * */  
  2. public class Tester { public static void main(String[] 
    args) { final SynDemo 
    synDemo = new SynDemo(); Thread 
    thread1 = new Thread() { @Override public void run() { 
    // TODO Auto-generated method stub  
  3. super.run(); synDemo.synMethord1(); } }; Thread thread2 
    new Thread() { @Override public void run() { // TODO 
    Auto-generated method stub  
  4. super.run(); synDemo.synMethord2(); } }; thread1.start(); 
    thread2.start(); while (true) { try { Thread.sleep(1000); 
    System.out.println("main"); } catch (InterruptedException e)
     { // TODO Auto-generated catch block  
  5. e.printStackTrace();  
  6. }  
  7. }  
  8. }  

 

我们的SynDemo是这样定义的:

 

  1. package com.cnblogs.gpcuster;/** * * @author 
    Aaron.Guo * */  
  2. public class SynDemo{ public void synMethord1() { 
    while(true) { try { Thread.sleep(1000); System.out.
    println("synMethord1"); } catch (InterruptedException e) 
    { // TODO Auto-generated catch block  
  3. e.printStackTrace();  
  4. }  
  5. }  
  6. }  
  7. public void synMethord2() { while(true) { try { Thread.
    sleep(1000); System.out.println("synMethord2"); } catch 
    (InterruptedException e) { // TODO Auto-generated catch block  
  8. e.printStackTrace();  
  9. }  
  10. }  
  11. }  

以上就是对Java线程同步的详细介绍,希望大家有所帮助。

【编辑推荐】

  1. Java线程同步的优先级介绍
  2. Java线程同步问题在实践中寻找答案
  3. Java线程同步引用基本代码介绍
  4. Java线程同步如何才能排除阻塞
  5. Java线程同步锁解决共享数据安全
责任编辑:张浩 来源: 驱动之家
相关推荐

2010-03-16 19:08:03

Java线程同步

2009-07-10 17:54:15

Java中调用JythJython

2020-02-24 10:39:55

Python函数线程池

2010-01-21 11:27:30

linux多线程机制线程同步

2009-03-24 08:56:23

数据同步多线程Java

2009-06-17 13:19:50

Java调用DLL

2023-05-12 14:14:00

Java线程中断

2011-06-14 09:46:11

Qt QThread 线程

2010-03-15 16:47:30

Java多线程同步

2017-11-14 16:43:13

Java虚拟机线程

2010-04-21 15:20:31

Unix线程

2010-03-15 17:56:23

Java多线程

2009-01-12 09:49:03

Java线程多线程thread

2009-03-11 11:10:15

JavaJava开发线程

2013-07-16 12:13:27

iOS多线程多线程概念GCD

2011-04-14 13:27:53

Synchronize多线程

2010-03-15 19:37:00

Java多线程同步

2010-03-17 15:34:09

Java线程同步引用

2011-11-23 10:09:19

Java线程机制

2010-03-17 18:21:54

Java多线程静态数据
点赞
收藏

51CTO技术栈公众号