![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java 线程
乔不思
这个作者很懒,什么都没留下…
展开
-
复习之生产者——消费者问题
1.生产者消费者问题是实现线程同步的经典案例。这里做一个对生产消费者问题做一个模拟:我这里用一个 stack栈 用来存放产品,生产者生产产品,消费者消费产品,class Stacks{ int index=0; matou []ms=new matou[6]; public synchronized void push(matou m){ if(in原创 2014-01-04 22:46:37 · 720 阅读 · 0 评论 -
复习线程----调用run()方法和调用start()方法的区别
面试官经常问到这个问题:“创建线程后 在main方法中直接调用run()和调用start()方法有什么区别?” 区别在于:1.直接调用run()方法 根本就没有使创建的线程执行,也就是说 当前进程中只存在一个线程main(也可以说是两个,因为还有一个jvm还有一个资源回收线程),这样调用程序的执行具有“可在现性”,也就是说每次执行的执行结果是一样的。2,调用start方法,jvm就直原创 2014-01-23 17:44:44 · 1554 阅读 · 0 评论 -
Treeset和HashSet有什么不同(复习)
Set ||-------HashSet|-------TreeSetSet集合是一个无序的集合,与其他集合表现出来的最显著的特点是:里面不存在相同的值,当然前提是这些集合有自然顺序(TreeSet),或者用比较性(HashSet),TreeSet是实现排序的理想集合,当遍历TreeSet集合的时候,我们能得到一组有序的元素,当然这个顺序是自然的,也有可能是自定义的。原创 2014-03-03 11:28:30 · 2382 阅读 · 0 评论 -
struts1 和struts2 线程安全
首先我们必须要先了解servlet的生命周期:服务器只创建每个servlet的单一实例,首次创建servlet时,它的init方法会被调用,因此,init是放置一次性设置代码的地方,之后,针对每个用户的请求都会创建一个线程,该线程调用前面创建的实例方法。多个并发请求一般会导致多个线程同时调用service(线程安全),service方法会依据接受到HTTP请求的类型,调用doXXX方法。最转载 2014-06-25 09:52:00 · 684 阅读 · 0 评论