我不是要求任何人为我做这个作业,但我提出它是因为它是对 C# 和线程的非常好的实用介绍,但同时我觉得它可能有点太简单了。
这真的是教授线程的最好方法吗?在本练习中“丢失”了哪些关键线程概念,第一次使用线程的新程序员可能无法观察到什么?
我有很多关于线程的理论知识,但过去我自己不需要做很多,写它时有人对我有什么警告吗?
这是目标文本:
1) 创建一个线程安全的通用循环队列类并创建一个 GUI 来使用它(参见下一节)。在这种情况下,线程安全意味着更改队列内容的每个操作(方法)一次只能由一个线程执行,以避免数据损坏。循环队列被实现为一个固定大小的数组,其中队列的开始和结束是数组中的索引。随着队列填满,队列的开头和结尾将随着元素的添加而转移到更高的值,并最终环绕到数组中的第一个索引以重用内存。如果操作无效,此类还应向调用者抛出异常(如下指定)。
2) 创建一个 GUI 以生产者-消费者的方式控制两个线程。GUI 将能够启动和启动和停止生产者和消费者线程,并控制它们修改 GenericCircularQueue 的速率。