并发||异步||并行
LeeCarry
这个作者很懒,什么都没留下…
展开
-
C#.NET Thread多线程并发编程学习与常见面试题解析-1、Thread使用与控制基础
前言:因为平时挺少用到多线程的,写游戏时都在用协程,至于协程那是另一个话题了,除了第一次学习多线程时和以前某个小项目有过就挺少有接触了,最近准备面试又怕被问的深入,所以就赶紧补补多线程基础。网上已经有很多线程编程的学习笔记了,那我为什么还要再整理一篇呢。因为我在搜索网上文章的时候发现一般别人整理的面试文章那很多语法都一笔带过了默认大家都懂,学习文章又很少有给出经典的题目,一般都是要几篇集合着...原创 2019-08-27 23:18:45 · 6978 阅读 · 1 评论 -
C#.NET Thread多线程并发编程学习与常见面试题解析-2、同步与互斥简介+信号量+前后台线程
前言:上一期的最后我提到使用一种类似信号灯的机制,但那只是为了方便理解,严格意义来说上一期使用的是事件(event)。上一期提到其实我们可以合并成一个函数,我在私下里已经用不同的方法验证过了,但因代码太丑也不好展开就不放上来了一、互斥与同步什么是互斥?当多个线程访问同一个全局变量,或者同一个资源(比如打印机)的时候,需要进行线程间的互斥操作来保证访问的安全性。什么是同步?同步指的是...原创 2019-08-29 14:10:14 · 2160 阅读 · 0 评论 -
C#.NET Thread多线程并发编程学习与常见面试题解析-3、lock深度解析
前言:上一期讲了互斥和同步的基本概念,而且用金矿和苦工的例子讲了信号量。一、lock使用我们继续用金矿和苦工的例子举例,但是这一次我们不再是用控制台来简单的输出是否正在挖矿了,而是我们开一个变量用来事实的去模拟金钱的增加。我们就让5个矿工每个矿工挖矿100次using System;using System.Threading;namespace LeeCarry{ pu...原创 2019-08-29 23:29:29 · 675 阅读 · 0 评论 -
C#.NET Thread多线程并发编程学习与常见面试题解析-4、基元线程同步构造
前言:上期我们解析了lock,并且得知了lock是对Monitor的封装,并且说了Monitor其实是一个混合锁,我们这期来看一下他到底混合了什么呢。当然,本节内容的理论知识非常多一、基元线程同步构造概念首先基元是什么意思?基元指的是最简单的代码构造,例如int a=0;和Int32 a = new Int32();他们生成出来的IL代码都是一样的,所以我们就称int为基元类...原创 2019-09-10 16:19:32 · 2253 阅读 · 0 评论