There is no common backend for VirtualTerminal nor TerminalControl.
To test VirtualTerminal:
I bind two instances of VirtualTerminal to one Ssh object and another two instances of VirtualTerminal to one Telnet object. All four instances of VirtualTerminal are running simultaneously in four tasks without blocking each other.
To test TerminalControl:
I created a WinForm. I placed three TerminalControls on it. In Form_Load method I bind two TerminalControls to an Ssh object and one TerminalControl to Telnet object. I am able to work with all TerminalControls without blocking each other.
Moreover, I opened another form with TerminalControl when button was clicked. All terminals on all forms were working fine.
Finally, I created a form with a TerminalControl dynamically and I opened it when a button was clicked. Again, all terminals were working fine.
If you would like to see my test code, please let me know.
I think that the issue is related to the way you create or display forms. If you send me your code, I can look at it and hopefully spot something. In this case, send your project to support@rebex.net