<div><div><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div link="blue" vlink="purple" lang="EN-US"><div><p><span style="font-size: 11pt; color: rgb(31, 73, 125);">
I am not suggesting that that's the best design for your
application.&nbsp; But you started with a very specific question about thread
safety and we're trying to back up to the broader question of application
design (hence the edit I made to the Subject line), because it seems like that's
what you are trying to accomplish.&nbsp;</span></p></div></div></blockquote><div>I was asking about thread safety becouse architecure based on mapscript_dll give me all functionality what I need now. This architecure is the best for functionality, but bad for multithreading (stability and performance). 
<br><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div link="blue" vlink="purple" lang="EN-US"><div><p><span style="font-size: 11pt; color: rgb(31, 73, 125);">
If you'd like assistance with
that, then you'll need to really describe your application in detail.&nbsp; <br></span></p></div></div></blockquote><div>Here is some description of simple example of talking protocol between client and server - to easier understand. It is not all functionality. Forget about updates, I don&#39;t need this now,&nbsp; maybe in future. Application will be created in stateful mode.
<br><br><br>Many clients are connecting to webservice(my IIS application). <br>Each clients has its own map session so it means that has mapobject on server side in session cache, on which he can set parameters like zoom, center point, bounding rectangle, layers visibility,etc via webservice methods.
<br>Webservice recognises proper mapobject becouse clients sends sessionId in each method.<br>e.g. SetZoom(long sessionId, float zoom). <br><br>After setting this parameters on his own map object(which is in webservice memory),&nbsp; client requests for image by executing GetImage webservice method. After that image will be sended to the webservice client via SOAP from webservice app.
<br>After a while client want to see all towns with first letter &quot;W&quot; in name and marked as different color. So client executes proper method on webservice. WebService is creating new layer (filtered from towns) and put this layer to proper mapobject. After that client execute GetImage method to see those &quot;w*&quot; towns in all country (with also other layers which visibility he had set before).
<br><br><br> <br><br></div><br><br><br><br></div>