How can multithread Visual Basic servers be implemented

Hello,

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

Hello,

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”
Continue
else
exit-loop
endif
end-loop
Deregister (function=7,option=3)
end

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

Hope this helps.

Let me know if you need additional information.

Regards,
Clauder Balzano.

Clauder,

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