我正在使用Web服务并调用一个返回对象数组的方法,如下所示。 它是线程安全还是我需要在获取值之前将其锁定?
类WebClient {
public string GetInfo(){Enternalwebservice extWeb = new ExternalWebservice();
Person [] p = extWeb.GetEmployeeData();
string info = p [0] .name + p [1] .Age;
返回信息; }
}
//从多个线程调用webclient类,如下所示。
WebClient wc = new WebClient(); wc.GetInfo();
由于对象数组不是线程安全的,它需要在读取数组之前将其锁定。
答案 0 :(得分:0)
Person [] p将位于Thread本地存储中,并作用于该线程。它不是由线程共享的,因此不需要围绕它进行任何同步。