目的:textbox 依次从0~10000加入
写法1 (卡UI)
for(int i=0;i<=10000;i++)
{
textbox1.ApendText(i.ToString());
}
写法2 (异步)
task.run(()=>
for(int i=0;i<=10000;i++)
{
textbox1.invok(new Action(()=>textbox1.ApendText(i.ToString())));
}
)
问题: 写法2 这种方式能是可以实现不卡UI;但这种写法是正确的么?如果说有N个textbox ,假如系统可以开设无限线程的情况下,我创建N条thread线程 或者 N个异步task 来执行0~10000 ,然后启动这些thread或task 让N个textbox 由thread或者task操作起来,系统UI会假死么?还是依然不卡UI; 还是我这种写法本来就是错误的,需要用委托方式来写? 望大神指教 谢过
写法1 (卡UI)
for(int i=0;i<=10000;i++)
{
textbox1.ApendText(i.ToString());
}
写法2 (异步)
task.run(()=>
for(int i=0;i<=10000;i++)
{
textbox1.invok(new Action(()=>textbox1.ApendText(i.ToString())));
}
)
问题: 写法2 这种方式能是可以实现不卡UI;但这种写法是正确的么?如果说有N个textbox ,假如系统可以开设无限线程的情况下,我创建N条thread线程 或者 N个异步task 来执行0~10000 ,然后启动这些thread或task 让N个textbox 由thread或者task操作起来,系统UI会假死么?还是依然不卡UI; 还是我这种写法本来就是错误的,需要用委托方式来写? 望大神指教 谢过