java线程变量
1. java 中 线程A能否读取线程B中的一个变量如何读取
可行,目前我能想到两个办法:
1.
你的第二个线程通过定时任务的类去启动,同时这个定时任务的类保存一个这个线程的引用,这样就可以改变这个线程的变量了。
2.
你的定时任务去设置一个全局的属性,然后这个线程一直监听这个属性,符合条件才执行。
2. java多线程共享变量
两个线程同时获取变量,
获取之后.第一个线程++操作,然后进入睡眠.
这时,第二个线程,也获取到了,做--操作.睡眠.
第一个线程醒来打印的是做过2次运算的数据(++,--)所以是0
第二线程也一样.
这涉及到多线程安全问题.
3. java 多线程成员变量问题
1,代码一的i是局部变量 代码2的i是全局变量
4. Java两个线程操作一个变量,为什么变量的值会不一样呢
如楼下所说,线程同步的问题。
除了了使用synchronized。
还可以使用原子类型,例如AtomicInteger,参见
http://dlc.sun.com.edgesuite.net/jdk/jdk-api-localizations/jdk-api-zh-cn/publish/1.6.0/html/zh_CN/api/index.html
5. java中怎么把一个线程里面的变量传到另一个线程
把这个变量定义提取到线程外部, 线程通过引用持有这个变量, 这样就可以实现变量的共享, 这个时候就要注意线程同步的问题.
6. java多线程 全局变量
你这个全局变量是static变量吗?必须是static才是全局的
然后要保证这个调用全局变量的类和那个线程是在同一个进程
然后要考虑执行的顺序,保证赋值的线程先执行
7. java中一个变量a=1,第一个线程将a更改为2,但第二个线程想取原值,怎么规避这个
再声明一个变量,让它等于a,
第二个线程取这个值就行
8. java中开启子线程后主线程中传入的变量不变
使用回调,变量改变。
在主线程中对类C的实变量进行设置,然后输出变量开启子线程,通过构造函数传入变量,在子线程中改变变量的值子线程中调用主线程的静态方法传递数据给主线程说明子线程执行结束子线程结束后在主线程中查看变量已经发生改变。
每个线程都有一个唯一标示符,来区分线程中的主次关系的说法, 线程唯一标示符,Thread.CurrentThread.ManagedThreadID。