How can multithread Visual Basic servers be implemented


We are using a ACI server that is written in Visual Basic .NET. For communication to the broker we are using the Broker ActiveX control. When the .NET server starts it can instantiate multiple servers by the multithreading mechanism of .NET. However the Broker ActiveX control can only be started once, you can verify this in the control center.
Each .NET thread must pass it’s call to OLE32.dll which then serializes all calls to the Broker ActiveX control. Other languages like C don’t have this problem but the syntax is on a lower level then VB.
An enhancement proposal has been submitted to SAG for this but meanwhile we would like to continue development.
Has anybody already dealed with this problem and how did you resolve it?

best regards,

Thierry Casier


Use “Attach Server”

In EntireX Comunicator Release 7.1 now aviable Attach Manager on UNIX and Windows
In the docu see “Release Notes” → “What’s New in this Release” → “Attach Manager on UNIX and Windows”.

or make your Attach Manager

Attach Manager Server
Register (function=6,Option=13)
Receive-loop (function=2,option=0,conv-id=NEW,wait=30S)
if error-code=“00100022”
Start Application Server in new thread
elsif error-code=“00740074”
Deregister (function=7,option=3)

Server Application
Register (function=0,option=0)
Receive-loop (function=2,option=0,wait=NO)
Send-data (function=1)
Deregister (function=7,option=3)

Hope this helps.

Let me know if you need additional information.

Clauder Balzano.


Our development team has taken another way. They create multiple EXE files to start multiple servers. So they don’t use attach management but they hope to start enough servers to keep up with the load.
We’ll see if this can be successfull.

thanks anyway for your reply.

Thierry Casier

Thierry Casier