
C#
文章平均质量分 88
暗光之痕
这个作者很懒,什么都没留下…
展开
-
C# 多线程编程 经典模型 哲学家进餐问题
语言:C# 总起:今天的哲学家进餐问题是最后多线程模型,讨论的是在有限的资源里线程竞争导致死锁、饥饿等问题。 没有接触过多线程编程的同学,可以先看一下第一章。 哲学家进餐问题:该问题说的是,有5个哲学家围在一个圆桌前进餐,每个哲学家两旁有两把叉子,一共5把叉子。每个哲学家进行进餐需要拿起左右两把叉子,吃完之后将两把叉子放回供其他人使用。 这个是wiki上的图原创 2017-12-29 20:38:43 · 2770 阅读 · 2 评论 -
C# 多线程编程 经典模型 读者和写者问题
语言:C# 总起:昨天的生产者消费者模型我们初步学习了多线程的一些知识,今天我们来讨论读者和写者的问题。 如果没有接触过多线程的同学,最好先看下第一篇文章。 Semaphore和Mutex的区别:昨天说信号量Semaphore的数量为1时跟互斥体Mutex是一样的,但实际上还是有个重要的区别的。 Semaphore在使用时不管在哪个线程获取,其他线程都可以释原创 2017-12-28 17:54:40 · 1514 阅读 · 1 评论 -
C# 多线程编程 经典模型 生产者和消费者问题
语言:C# 总起:在编写Unity程序的时候一般不用考虑到多线程的问题,但了解经典的三个问题对以后编写多线程会有所帮助,嘛,主要是好奇就研究看看。 多线程的两个主要的对象是Mutex互斥体和Semaphore信号量,当然现在语言都提供类似lock的关键字使用更加方便。不过既然C#提供了这样的实现,我还是以这两个对象作为展开。 Mutex互斥体和Semaphore信号量:原创 2017-12-27 21:42:44 · 10537 阅读 · 3 评论 -
C# Linq查询的基本练习
在C#中利用Linq进行一些集合的操作是十分方便的,传统的一些编程方式自然也能相同的功能,不过使用Linq更加的优雅。 C#的一些高级语言特性确实令人着迷。 我这边就直接通过几个例子来展现一下Linq的强大,就不说逐字逐句的扣语法了。 Linq之前:在写Linq之前有几个C#新的知识点必须掌握才能学习它。 1.匿名对象:学过Java的同学知道匿名对象的强大之原创 2017-12-17 15:46:21 · 7296 阅读 · 0 评论