[转] Java线程问题:当一个目标对象被多个线程共享时候
来源:互联网 发布:知柏地黄丸治疗湿热吗 编辑:程序博客网 时间:2024/05/22 06:14
原文地址:Java线程问题:当一个目标对象被多个线程共享时候
Java线程问题:当一个目标对象被多个线程共享时候,就是有多个run()方法同时运行的时候,内存中每一个享用这个对象的线程的实体是在何时被创建并且怎样同时运行呢?是同时开辟了多块内存空间吗?
Answer
你说的这个被大家调用的对象他始终都是同一内存地址,所谓多线程,其实还是一个单线程,只是几个线程方法的级别一样高,所以执行一会这个再执行一会其它线程。就好像有一碗粥,三个人分,单线程的情况下可能第一个人都给吃完了,二三个人没有的吃了,如果多线程的话,一人一口,轮着吃,大家都有吃到的机会了。但是粥始终是那一碗粥。
线程的生命周期java基础的书上都有写。
哦,对,你说的这个一个对象被多个线程调用,如果线程做了休眠或者其它的处理,还可能还存在死锁的问题。出现无法执行的现象。
class MyThread implements Runnable{ private int i; public void run(){ for (; i < 3; i++){ //循环次数过少时,会出现只有Thread A的输出结果;调整循环次数1000后,Thread B开始出现~~~ System.out.println(Thread.currentThread().getName() + " " + i); } }}public class ThreadDemo02{ public static void main(String args[]){ MyThread st = new MyThread(); new Thread(st, "Thread A").start(); new Thread(st, "Thread B").start(); }}
0 0
- [转] Java线程问题:当一个目标对象被多个线程共享时候
- Java线程问题:当一个目标对象被多个线程共享时候
- java线程共享变量问题
- Java线程间通过共享对象通信
- java 当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?
- Java Runnable线程变量共享问题
- JVM线程共享问题
- 当数组是一个对象的时候转list
- 线程安全性与对象共享
- 线程安全和对象共享
- 当一个线程进入一个对象的synchronized() 方法后,其他线程是否可以进入此对象的其他方法
- Java并发编程详解之 线程安全和对象共享
- java线程学习(2)—对象的共享
- 《Java并发编程实战》---线程安全性---对象的共享
- java线程对单个对象的共享的一些方式
- Java并发编程规则:构建线程安全的共享对象
- 当发现某个java线程占CPU或内存非常高的时候,你如何定位?
- 当一个线程进入对象的synchronized方法后,其它线程是否可进入此对象的其它方法?
- 系统正交性
- TI_DSP_SRIO - DirectIO操作-LSU
- ExtJs GridPanel单元格不能选中复制
- Selenium2.0 java接口简介
- Android SDK
- [转] Java线程问题:当一个目标对象被多个线程共享时候
- Makefile常用函数总结
- Android Please ensure that adb is correctly located at问题解决
- SDL_CondWait及SDL_CondSignal
- mysql非占位排名
- 关于如何打开谷歌的电脑设置方法
- Hadoop 开源调度系统zeus(一)
- Prim POJ1258 POJ2485 POJ1789 POJ1751
- 解决Andriod软键盘出现把原来的布局给顶上去的方法