![]() |
1
1
这听起来可能是线程同步问题。 事件本身是线程化的,因此通过添加线程来解决它不是一个问题。 尝试使用同步锁来确保线程同步。 每当您收到数据时,锁定一个对象,直到您使用完数据为止。
我认为这种情况的术语是一种种族条件。 |
![]() |
2
0
让您的数据进入一个线程上的缓冲区,并从另一个线程观察缓冲区。在主线程上,将缓冲区标记为“准备发送”,并让辅助线程监视它。只需确保同步锁定对象。根据您的数据是什么,您可以创建一个对象来包装它,并使用一个布尔标记,然后将它转储到一个列表(T)中。让您的监视器线程休眠50毫秒或任何毫秒,锁定缓冲区并检查标志,拉出所需内容,解锁列表并将数据推出。 |
![]() |
Karl · 如何引发PrintPage的事件? 2 年前 |
![]() |
Daniel · LINQ从列表的dataTable中提取部分匹配 3 年前 |
![]() |
limelatte · 如何在datagridview中屏蔽特定列? 3 年前 |
![]() |
Orsi · 选择嵌套列表的最大值和最小值。网 3 年前 |
![]() |
D T · 如何为Excel Com设置公式? 3 年前 |
![]() |
Lenin · 将数组中的每个元素与另一个数组中的相应元素相乘 3 年前 |