win8简单多线程

来源:互联网 发布:广州北兴淘宝村 编辑:程序博客网 时间:2024/05/17 08:08

线程是进程的基本组成单位,进程是操作系统分配资源的基本单位,每一个正在运行的应用程序都是一个进程,操作系统使用进程将正在执行的不同应用程序分开,一个进程包含多个线程,线程是操作系统进行调度和执行的基本单位,操作系统以线程为单位进行处理器的时间片分配。在.net framework 4之前多线程都是通过Thread来实现,从.net framework 4开始提出任务(Task)的概念,下面就是多任务的简单练习。

一个任务由任务ID唯一标识,任务ID在使用的时候才创建,也就是说,一个任务每次执行时可能会有不一样的ID,可以随时访问任务的Status属性。它是一个枚举类型。

前台布局,只需一个标签,显示就行。

<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">        <TextBlock Name="txt" Text="信息" FontSize="30" Margin="400,200"></TextBlock>    </Grid>

 private void UpdateUI(string message)        {            var ignore = this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>                {                    txt.Text += message;                });        }

/// <summary>        /// 创建任务        /// </summary>        protected void CreateTask()        {            var taskA = new Task(() => UpdateUI("这是任务A"));            taskA.Start();            var taskB = Task.Run(() => UpdateUI("这是任务B"));            var taskC = Task.Factory.StartNew(() => UpdateUI("这是任务C"));            var taskE = new Task(() => UpdateUI("这是任务E"));            taskE.Start();            var taskF = Task.Run(() => UpdateUI("这是任务F"));            var taskG = Task.Factory.StartNew(() => UpdateUI("这是任务G"));        }

 public MainPage()        {            this.InitializeComponent();            CreateTask();                    }


原创粉丝点击