Dear al, I've got an architectural question for the serial communication. I am currently working on a machine which is communicating with LabVIEW program on PC. There are totally 4 COM ports that are involved. COM1 (RS485) is used and shared by multiple threads/users, where as COM2, 3 and 4 (RS232) are used only by a its own thread. I created a VI for send and receive with time out and so on. In order to prevent race condition of access to COM1, this send receive VI is not re-entrant. On the other hand, however, I need this VI to be re-entrant, so that it can be used by communications of COM 2, 3 and 4. Do you know how I can solve this dilemma? Thanks a lot!