LabVIEW中的队列和信号量在可执行程序中能正常运行吗?



主要软件:
主要软件版本: 6.1
主要软件修正版本: N/A
次要软件: LabVIEW Development Systems>>LabVIEW Professional Development System

问题: 我创建了两个VI,通过一个队列或者信号量实现相互间的通信。在LabVIEW开发环境下,它们运行很正常。但当我把其中一个VI或者两个vi(s)都做成可执行程序时,它们之间就不能彼此通信了。队列和信号量能在可执行程序中运行吗?

解答: 不能。队列和信号量的引用制造它被生成的进程中有效。当两个VI都在LabVIEW开发环境中运行时,它们都属于同一个进程。当你把VIs生成可执行程序后,每一个可执行程序有它自己的进程。因此一个可执行程序内部生成的引用对另外一个可执行程序是没有意义的。当一个VI被生成可执行程序,另一个VI在LabVIEW开发环境中运行时,这种情况也是同样的,仍然处理的是两个独立的进程。

相关链接:
KnowledgeBase DIRECT-3S8RDE: What Is a Queue?
KnowledgeBase DIRECT-3S8REX: What Is a Rendezvous?
KnowledgeBase DIRECT-3S8RCH: What Is a Notifier?
KnowledgeBase DIRECT-3S8RDV: What Is a Semaphore?
KnowledgeBase 185FQU92: The Semaphore Function in LabVIEW Does Not Work Over the Network


附件:





报告日期: 08/12/2006
最近更新: 08/14/2006
文档编号: 30CB583J