on 10-04-2004 4:39 PM
Hello!
I have created an RFC Server using the .NET Connector 2.0. The code was generated in VB. When I run it, and then call it from a test program in SE38 that calls it 100 times in a row, it works fine. However, if I run two sessions at the same time and call the RFC Server, one of the SE38 sessions will dump. Can an RFC Server not handle calls from multiple sap callers? Or am I just missing something here?
Thanks!
Hi Mary,
I'll start by mentioning that I've never used the .NET connector. However, I have used the RFC SDK extensively, upon which the .NET connector is based (ignoring SOAP functionality).
Whilst the RFC library is thread-safe; multi-threading itself is something that must be implemented by yourself.
Specifically, each thread of the program must register itself with the SAP gateway using the same program ID. When you do this, you will get multiple connections appearing with the same program ID in SAP transaction SMGW (IIRC, in 4.6 menu Goto|Logged on clients).
Then, when your ABAP program makes a call to the RFC server, the system looks at the RFC destination, discovers the program ID, looks at the connections registered with that program ID and then selects a connection that is available (meaning, not currently serving another ABAP program).
From the SAP perspective, there is really no difference between a multi-threaded RFC server program and multiple instances of a single-threaded RFC server program. It is purely at matter of implementation for the remote end.
Cheers,
Scott
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
101 | |
13 | |
13 | |
11 | |
11 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.