多线程数据填充一般都是一个线程在读取数据,一个线程去更新数据。以下是一个简单的模型:publicclassworker{publicstaticListsourceData;publicvoidReaddata(){for(inti=0;i<10000;i++){//读取第i批次的数据lock(sourceData){//将这些数据放入sourceData}}}publicvoidrender(){while(true){lock(sourceData){//从sourcedata中取出新的数据}//将数据填充道UI}}}调用者workerwk=newworker();Threadth1=newThread(newThreadStart(wk.Readdata));Threadth2=newThread(newThreadStart(wk.render));th1.Start();th2.Start();