zoukankan      html  css  js  c++  java
  • ThreadPool.QueueUserWorkItem 方法 (WaitCallback)

    说明:将方法排入队列以便执行,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");
            }
    复制代码
  • 相关阅读:
    洛谷3004 [USACO10DEC]宝箱Treasure Chest
    洛谷3778 [APIO2017]商旅
    洛谷4141消失之物——每个体积的角度
    洛谷2943 [USACO09MAR]清理Cleaning Up——转变枚举内容的dp
    bzoj1858[Scoi2010]序列操作
    poj1325机器工作——二分图最小点覆盖
    洛谷P1144——最短路计数
    poj3254二进制放牛——状态压缩DP
    poj1191棋盘分割——区间DP
    洛谷P1474货币系统——背包方案计数
  • 原文地址:https://www.cnblogs.com/wwwbdabc/p/11653267.html
Copyright © 2011-2022 走看看