技术文章 > java >  java基础 > 正文

java中的synchronized是什么

小妮浅浅

出于对线程的保护,我们给每个线程配备了一把锁,synchronized就发挥着锁的作用。如果每个线程都有相应的锁,就不用担心多个线程出错的问题。只有当这个线程用完某一资源后,其他线程才能继续使用。下面我们就synchronized的概念、三种作用及方法分享给大家,最后带来使用的实例。

1.synchronized概念

能够保证同一时刻最多只有一个线程执行该段代码,以达到并发安全的效果。

2.synchronized的三个作用

1)确保线程互斥的访问同步代码

2)保证共享变量的修改能够及时可见

3)有效解决重排序问题。

3.synchronized三种用法

1)修饰普通方法

2)修饰静态方法

3)修饰代码块

4.synchronized实例

public class SynTest01 implements Runnable{
    static int a=0;
    public static void main(String[] args) 
                throws InterruptedException {
        SynTest01 syn= new SynTest01();
        Thread thread1 = new Thread(syn);
        Thread thread2 = new Thread(syn);
        thread1.start();thread1.join();
        thread2.start();thread2.join();
        System.out.println(a);
    }
    @Override
    public void run() {
        for(int i=0;i<1000;i++) {
            a++;
        }
    }
}

以上就是java中关于synchronized的介绍,相信大家已经对这种锁的有了初步的认知。接下来就synchronized的使用以及一些内容上的分析,会不断带来更多的讲解。

免费视频教程
本文原创发布python学习网,转载请注明出处,感谢您的尊重!
相关文章
 java线程组的批量管理
 同步在java线程的理解
 线程同步在java中的操作
 java volatile的特性是什么
 java Volatile不能指令重排原因
 java中的synchronized是什么
相关视频章节
 网络爬虫
 云端部署Web应用程序视频
 Web应用框架Flask和文件模板
 Web应用程序开发概述
 继承和多态
推荐视频
视频教程分类