java多线程
Rqff
这个作者很懒,什么都没留下…
展开
-
LeetCode 1116. 打印零与奇偶数
这次不用显示锁了,用个同步代码段吧,其实一样的意思。 题目要求 class ZeroEvenOdd { private int n; private int flag = 0; public ZeroEvenOdd(int n) { this.n = n; } // printNumber.accept(x) outputs "x", where x is an integer....原创 2020-01-12 14:21:52 · 186 阅读 · 0 评论 -
LeetCode 1115 交替打印FooBar
显式锁真好用╮( ̄▽ ̄")╭,以下是尚硅谷老师讲JUC时用的课件,我给粘过来了,说明一下Lock 在 Java 5.0 之前,协调共享对象的访问时可以使用的机制只有synchronized 和 volatile 。Java 5.0 后增加了一些新的机制,但并不是一种替代内置锁的方法,而是当内置锁不适用时,作为一种可选择的高级功能。 ReentrantLock 实现了 Lock 接口,并提供了与s...原创 2020-01-12 14:19:39 · 179 阅读 · 0 评论 -
LeetCode 1114. 按序打印
题目要求 简单来说,就是按序打印,让A打印方法先输出,接着是B,最后是C输出。 题是挺简单的,就当是巩固这几天学习的java多线程了,也熟悉一下JUC的使用。 力扣只给了一个类,我在Ecplise写了一下main函数的调用,AC代码就是那个Foo类。 以下是代码 package multithreading; import java.util.concurrent.locks.Condition...原创 2020-01-12 12:44:52 · 172 阅读 · 0 评论 -
java多线程(二)
因为临界资源没有互斥访问导致的问题,操作系统已经学习的比较详细了,我再赘述。 就拿老师讲的售票员卖票这个例子来简单叙述一下。 package sourceconflict; public class SourceConfilct { //临界资源问题 public static void main(String[] args) { Runnable r = ()->{ w...原创 2020-01-11 14:28:04 · 91 阅读 · 0 评论 -
java多线程(一)
java多线程 上课学的java忘得差不多了,再看看多线程吧… java语言实现了多线程机制,为什么不说是多进程的,因为进程概念是操作系统层面上的,不管OS有没有实现线程,进程都是资源调度的基本单位,线程只拥有很少的一部分资源,用于保证自己的正常运行。在一些没有实现多进程的系统上,就更不存在线程了。在多进程的系统中比如Windows操作系统,进程间的内存空间是互相独立的,数据不能直接共享,它的异步...原创 2020-01-10 20:51:47 · 93 阅读 · 0 评论