我有一个使用继电器控制器打开门的小应用程序。如果有人进来,我必须一直打开和关闭COM端口。早上,当很多人聚集在一起时,控制器的响应非常慢,我需要快速解决这个问题。
我的问题是,如果我一直打开它,我会遇到内存问题吗?如果应用程序崩溃并重新启动,是否会打开端口回收?
发布于 2010-08-20 02:28:47
我不认为你会遇到记忆问题。我编写了一个使用条形码扫描仪的程序,该扫描仪使用COM端口侦听来自扫描仪的事件。我在程序启动时打开它,并保持打开状态,直到程序完全关闭,没有任何问题。
唯一要担心的是COM端口一次只能由一个对象使用,所以如果您的程序已经打开它并试图再次打开它,那就是一个问题。
程序可能会打开COM端口,因此您最好尝试打开它,如果打开失败,请尝试关闭它(两个独立的try...catch块),然后再次尝试打开它。这是一个麻烦,但在我的应用程序中,它减少了我必须排除的错误数量。为了安全起见,我只是在每次程序加载时打开/关闭/打开。
发布于 2010-08-20 02:29:01
,它将关闭com端口
唯一的问题是,有时如果你没有适当地关闭com端口,它会让你的应用程序作为一个进程保持存活,而这个状态会让com端口保持不死。
https://stackoverflow.com/questions/3527750
复制