【发布时间】:2011-09-28 16:25:30
【问题描述】:
这是我正在工作的示例
Thread[] TCreate = new Thread[sexDataSize];
for(int i=0;i<sexData.size();i++)
{
final SDISQueryBuilder _qryBulider=qryBulider;
final String _newQry=_qryBulider.getQueryStringOnSex(sexData.get(i).getName(), baseQry, SDISCommonParam.onSEXID,sdisQueryInfo);
final int _i = i;
TCreate[i] = new Thread(new Runnable() {
public void run()
{
groupData.add("GROUPID_"+(_i+1), ((List<Count>) _qryBulider.facetOn_FieldName(_newQry.replace("1028","1046" ), SDISQueryInfo.url3, SDISCommonParam.onGroupID).getValues()));
}});
TCreate[i].setName("GROUPID_"+(_i+1));
TCreate[i].start();
}
for(int i=0;i<sexData.size();i++)
while (TCreate[i].isAlive()) Thread.sleep(10);
我需要知道 Thread.sleep(10) 和 TCreate[i].sleep(10) 之间的区别。两者都一样吗?还有其他问题吗?以及我是否正确处理线程。让我知道是否有变化。提前致谢
【问题讨论】:
标签: java multithreading thread-safety threadpool