[疑难] 请教关于线程的疑问!
hurd
2008-11-09
一个全局静态函数被多个线程调用, 这个静态函数只访问传入的参数,而不访问全部变量. 这样的函数不同步在多线程下会不会出问题?
这个静态函数访问到的变量只有传入的参数和它内部声名的域临时变量.. 用的是dmd1. |
|
hurd
2008-11-09
传入的参数都是线程唯一的, 不需要同步.
|
|
tomqyp
2008-11-09
只要你线程函数里的局部变量不是静态就不要紧
|
|
hqs7636
2008-11-09
觉得最好用不变量
|
|
hurd
2008-11-09
函数里没有静态变量,我主要是怕那些声明的变量也都需要同步:)
什么时候D2稳定了再用不变量吧。 |
|
hurd
2008-11-09
函数里没有静态变量,我主要是怕那些声明的变量也都需要同步:)
什么时候D2稳定了再用不变量吧。 |
|
oldrev
2008-11-09
参数是引用和指针就不好说了
|
|
hqs7636
2008-11-09
Erlang是这个思路,你能保证不会被修改就行,如果是库的话还是推荐不变量。
|
|
Colorful
2008-11-10
这需要考虑参数的传入方式。
传值的情况下,没有问题,它是线程安全的。 传引用的情况下,则非线程安全。 建议使用更加明确的同步方式来保证线程安全,而不是这种比较隐晦的方式。 |
|
hurd
2008-11-10
参数是引用,但是所有的参数都是线程的私有数据,这样会冲突吗?
所有线程传入的参数全都不同。 |