Question about Socket

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Question about Socket

Mariano Martinez Peck
Hi folks: I am preparing my SqueakDBX talk for ESUG and I am doing some comparisons between a database driver with an external library trough FFI and a native driver. I know FFI locks the VM until the function it is being invoked, finishes. But I don't know what happens with Sockets. Do sockets lock the hole VM until you obtain a response?

Thanks for any light in this field.

Best,

Mariano

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Question about Socket

Schwab,Wilhelm K

Mariano,

Sockets _should not_block the the entire image, but I have just seen it happen with LDAPlayer; I am not yet sure what to make of it.  That said, there should be a way to block the UI until something happens, but that should not be done from the sockets layer, as too many things benefit from mutliple conversations happening in the background.  On the blocking side, see references to gemstone interfacing, where the server response is integral to the ide responses, so blocking is considered essential.

Bill

 


From: [hidden email] [mailto:[hidden email]] On Behalf Of Mariano Martinez Peck
Sent: Friday, August 14, 2009 1:44 PM
To: The general-purpose Squeak developers list; Pharo Development
Subject: [Pharo-project] Question about Socket

Hi folks: I am preparing my SqueakDBX talk for ESUG and I am doing some comparisons between a database driver with an external library trough FFI and a native driver. I know FFI locks the VM until the function it is being invoked, finishes. But I don't know what happens with Sockets. Do sockets lock the hole VM until you obtain a response?

Thanks for any light in this field.

Best,

Mariano

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Question about Socket

Schwab,Wilhelm K
Mariano,
 
I might have walke into precisely the situation I was describing: maybe the IDE is blocking, not the socket.  If so, I still end up wondering why cmd-. is of so little  help??
 
Bill
 
 


From: [hidden email] [mailto:[hidden email]] On Behalf Of Schwab,Wilhelm K
Sent: Friday, August 14, 2009 2:27 PM
To: [hidden email]
Subject: Re: [Pharo-project] Question about Socket

Mariano,

Sockets _should not_block the the entire image, but I have just seen it happen with LDAPlayer; I am not yet sure what to make of it.  That said, there should be a way to block the UI until something happens, but that should not be done from the sockets layer, as too many things benefit from mutliple conversations happening in the background.  On the blocking side, see references to gemstone interfacing, where the server response is integral to the ide responses, so blocking is considered essential.

Bill

 


From: [hidden email] [mailto:[hidden email]] On Behalf Of Mariano Martinez Peck
Sent: Friday, August 14, 2009 1:44 PM
To: The general-purpose Squeak developers list; Pharo Development
Subject: [Pharo-project] Question about Socket

Hi folks: I am preparing my SqueakDBX talk for ESUG and I am doing some comparisons between a database driver with an external library trough FFI and a native driver. I know FFI locks the VM until the function it is being invoked, finishes. But I don't know what happens with Sockets. Do sockets lock the hole VM until you obtain a response?

Thanks for any light in this field.

Best,

Mariano

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Question about Socket

Mariano Martinez Peck
Schwab: You were very clear and right. I also asked in squeak-dev and Andres Raab said:

"The socket interfaces are entirely asynchronous, i.e., there is no blocking. Sockets have semaphores associated with them that are signaled when anything interesting is happening. Check out methods like Socket>>sendData: to see how this stuff works together."

Thanks!

Mariano


2009/8/14 Schwab,Wilhelm K <[hidden email]>
Mariano,
 
I might have walke into precisely the situation I was describing: maybe the IDE is blocking, not the socket.  If so, I still end up wondering why cmd-. is of so little  help??
 
Bill
 
 


From: [hidden email] [mailto:[hidden email]] On Behalf Of Schwab,Wilhelm K
Sent: Friday, August 14, 2009 2:27 PM
To: [hidden email]
Subject: Re: [Pharo-project] Question about Socket

Mariano,

Sockets _should not_block the the entire image, but I have just seen it happen with LDAPlayer; I am not yet sure what to make of it.  That said, there should be a way to block the UI until something happens, but that should not be done from the sockets layer, as too many things benefit from mutliple conversations happening in the background.  On the blocking side, see references to gemstone interfacing, where the server response is integral to the ide responses, so blocking is considered essential.

Bill

 


From: [hidden email] [mailto:[hidden email]] On Behalf Of Mariano Martinez Peck
Sent: Friday, August 14, 2009 1:44 PM
To: The general-purpose Squeak developers list; Pharo Development
Subject: [Pharo-project] Question about Socket

Hi folks: I am preparing my SqueakDBX talk for ESUG and I am doing some comparisons between a database driver with an external library trough FFI and a native driver. I know FFI locks the VM until the function it is being invoked, finishes. But I don't know what happens with Sockets. Do sockets lock the hole VM until you obtain a response?

Thanks for any light in this field.

Best,

Mariano

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project