1、背景最近参加某某公司的Java实习生面试,面试官提出了一个多线程编程的笔试题,当时脑子一热,不管三七二十一,就虾肝了一番,最后把自己都整糊涂了。今天思考了下,发现确实挺简单的。2、测试题目如果有三个线程名字为:"load","process","
1、线程的等待/通知机制等待/通知机制是指一个线程A调用了对对象O的wait()方法进入等待状态,而另一个线程B调用了对象O的notify()或者notifyAll()方法,线程A收到通知后从对象O的wait()方法返回,执行后续操作。上述两个线程通过对象O来完成交互,而对象上的wait()和not
Java并发编程的基础是多线程。Java从诞生开始就明智地选择了内置对多线程的支持,这使得Java语言相比于同一时期的其他语言具有明显优势。1、线程1.1、线程简介现代操作系统在运行一个程序时,会为其创建一个进程,其调度的最小单元时线程,也叫轻量级进程(LightWeightProcess),在一个
这几天肝java并发编程,涉及到死锁时,要想查看是什么原因导致的线程死锁,就需要导出线程dump进行分析。jvm就有现成的工具来实现线程dump导出,具体步骤如下:1.查看java进程首先,需要通过jps命令查看当前机器上的所有java进程,找出进程的pid。jps(JavaVirtualMachi
题目给你一个包含n个整数的数组nums,判断nums中是否存在三个元素a,b,c,使得a+b+c=0?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。示例给定数组nums=[-1,0,1,2,-1,-4],满足要求的三元组集合为:[[-1,0,1],[-1,-1,2]]思路
题目描述给你n个非负整数a1,a2,...,an,每个数代表坐标中的一个点(i,ai)。在坐标内画n条垂直线,垂直线i的两个端点分别为(i,ai)和(i,0)。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且n的值至少为2。图中垂直线代表输入数组[1,8,6,
题目描述给你一个字符串s和一个字符规律p,请你来实现一个支持'.'和'*'的正则表达式匹配。'.'匹配任意单个字符'*'匹配零个或多个前面的那一个元素所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。说明:s 可能为空,且只包含从 a-z 的小写字母。p 可能为空,且只包含从 a-z 的小写