C#并发编程
文章平均质量分 83
记录C#并发编程的一些经验和知识。
一团静火
安静的星星之火。
展开
-
C#并发编程-4 同步
如果程序用到了并发技术,那就要特别留意这种情况:一段代码需要修改数据,同时其他代码需要访问同一个数据。这种情况就需要考虑同步地访问数据。如果下面三个条件都满足,就必须用同步来保护共享的数据。多段代码正在并发运行;这几段代码在访问(读或写)同一个数据;至少有一段代码在修改(写)数据。一 阻塞锁如果有多个线程需要安全地读写共享数据,这种情况可以考虑使用lock语句。一...原创 2022-08-13 19:21:00 · 203 阅读 · 0 评论 -
C#并发编程-3 并行编程基础
如果程序中有大量的计算任务,并且这些任务能分割成几个互相独立的任务块,那就应该使用并行编程。并行编程用于分解计算密集型的任务片段,并将它们分配给多个线程。这些并行处理方法只适用于计算密集型的任务。一 数据的并行处理如果有一批数据,需要对每个数据进行相同的操作,其操作是计算密集型的,需要耗费一定的时间。Parallel 类型有 ForEach 方法可以解决上述问题。下例使用了一批矩阵,对...原创 2022-08-04 17:17:00 · 191 阅读 · 0 评论 -
C#并发编程-2 异步编程基础-Task
一 异步延迟在异步方法中,如果需要让程序延迟等待一会后,继续往下执行,应使用Task.Delay()方法。//创建一个在指定的毫秒数后完成的任务。public static Task Delay(int millisecondsDelay);//创建一个在指定的毫秒数后完成的可取消任务。public static Task Delay(TimeSpan delay, Cancella...原创 2022-07-29 16:51:00 · 366 阅读 · 0 评论 -
C#并发编程-1 并发编程概述
一 并发编程简介1.1 关于并发和并行并发和并行的概念:并发:(Concurrent),在某个时间段内,如果有多个任务执行,即有多个线程在操作时,如果系统只有一个CPU,则不能真正同时进行一个以上的线程, 它只能把CPU运行时间划分成若干个时间段,再将时间段分配给各个线程执行,在一个时间段的线程代码运行时,其它线程处于挂起状态。并行:(Paralle...原创 2022-07-28 17:05:00 · 692 阅读 · 0 评论