标签:void object private ThreadPool result QueueUserWorkItem WaitCallback addtest
说明:将方法排入队列以便执行,WaitCallback,表示要执行的方法。如果将方法成功排入队列,则为 true;否则为 false。
示例:addtest方法需要比较长的时间来响应,因此在button1_Click被点击以后,程序会失去响应,使用ThreadPool.QueueUserWorkItem 后,页面会继续响应其他时间,等addtest执行结束后,响应结果。
<Window x:Class="WpfAppThread.Window1"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Grid>
<Button Height="23" HorizontalAlignment="Left" Margin="9,23,0,0" Name="button1" VerticalAlignment="Top" Width="75" Click="button1_Click">ButtonOne</Button>
<Button Height="23" Margin="102,23,101,0" Name="button2" VerticalAlignment="Top" Click="button2_Click">ButtonTwo</Button>
</Grid>
</Window>
private void button1_Click(object sender, RoutedEventArgs e)
{
ThreadPool.QueueUserWorkItem(new WaitCallback(addtest),"Testaa");
//addtest();
}
private void addtest(object aa)
{
long result=0;
for (int i = 0; i < 1000000000; i++)
{
result += i;
}
MessageBox.Show(result.ToString()+aa.ToString());
}
private void button2_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("two");
}
标签:void,object,private,ThreadPool,result,QueueUserWorkItem,WaitCallback,addtest
来源: https://www.cnblogs.com/wwwbdabc/p/11653267.html
本站声明:
1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。