- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在创建一个简单的程序来控制两个电机和一个光幕,出于安全原因。在程序中,用户将点击“运行”,并且(在新线程上)如果没有任何东西进入光幕,电机将移动到不同的位置。如果确实有东西进入光幕,则会引发一个事件,该事件必须立即停止所有运动(即停止另一个线程)。
对于这种情况我应该使用什么线程类型?我对 System.Threading.Thread
有点熟悉,并且使用过 ThreadPool
来完成小型的数字计算任务。
此外,如果光幕损坏,安全停止硬件(即线程)的适当方法是什么?我听说 Abort()
方法不合适。
谢谢!
编辑
我正在使用 .NET 2.0。
最佳答案
不仅 Thread.Abort()
对您的代码来说不是最安全的事情,它看起来也不像是保证引擎关闭的方法。除非线程代码一直处于某种循环中,一直按下死人开关。换句话说,
to safely stop the hardware (i.e. the thread)
它们似乎不是一回事。
您的电机线程应该合作,即持续轮询取消标志。这适用于所有解决方案(线程、TPL)。
关于c# - 使用哪种线程类型,适当的暂停/中止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9297737/
这段代码在 Java 中的等价物是什么?我放了一部分,我对 I/O 部分感兴趣: int fd = open(FILE_NAME, O_WRONLY); int ret = 0; if (fd =
我正在尝试将维度为 d1,d2,d3 的张量 M[a1,a2,a3] reshape 为维度为 d2, d1*d3 的矩阵 M[a2,a1*a3]。我试过 M.reshape(d2,d1*d3) 但是
我是一名优秀的程序员,十分优秀!