[Mono-bugs] [Bug 74661][Nor] New - Asynchronous I/O not working with windows
bugzilla-daemon@bugzilla.ximian.com
bugzilla-daemon@bugzilla.ximian.com
Tue, 19 Apr 2005 14:17:32 -0400 (EDT)
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by dominic_ullmann@hispeed.ch.
http://bugzilla.ximian.com/show_bug.cgi?id=74661
--- shadow/74661 2005-04-19 14:17:32.000000000 -0400
+++ shadow/74661.tmp.29837 2005-04-19 14:17:32.000000000 -0400
@@ -0,0 +1,71 @@
+Bug#: 74661
+Product: Mono: Class Libraries
+Version: 1.1
+OS:
+OS Details: XP
+Status: NEW
+Resolution:
+Severity:
+Priority: Normal
+Component: CORLIB
+AssignedTo: mono-bugs@ximian.com
+ReportedBy: dominic_ullmann@hispeed.ch
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: Asynchronous I/O not working with windows
+
+Description of Problem:
+Asynchronous I/O is not working with mono 1.1.6 / mono 1.0.6 on windows.
+
+Steps to reproduce the problem:
+1. unzip the example
+2. compile client in directory client with mcs /out:Client.exe *.cs
+3. compile server in directory server with mcs /out:Server.exe *.cs
+4. run server.exe with mono server.exe
+5. run client.exe with mono client.exe
+
+Actual Results:
+server side:
+Waiting for a connection... Connected!
+Waiting for a connection... problem while receiving:
+System.IO.IOException: EndR
+ead failure ---> System.Net.Sockets.SocketException: Operation on non-
+blocking s
+ocket would block
+in <0x00071> System.Net.Sockets.Socket:Receive_nochecks (System.Byte[]
+buf, Int3
+2 offset, Int32 size, SocketFlags flags)
+in <0x00090> System.Net.Sockets.Socket+Worker:Receive ()--- End of inner
+excepti
+on stack trace ---
+
+in <0x00084> System.Net.Sockets.NetworkStream:EndRead (IAsyncResult ar)
+in <0x00011> Ch.Elca.Iiop.TcpTransportBase:EndRead (IAsyncResult
+asyncResult)
+in <0x0000d> Ch.Elca.Iiop.TcpServerTransport:ITransport.EndRead
+(IAsyncResult )
+in <0x00030> TestAsyncRead.MessageReceiveTask:HandleReadCompleted
+(IAsyncResult
+ar)
+
+
+
+Expected Results:
+With MS.NET, I get no exception. The following output is expected:
+Waiting for a connection... Connected!
+Waiting for a connection... read completed
+Received: ABC
+
+How often does this happen?
+Always.
+
+Additional Information:
+In my opinion, EndRead should not block in this case, because some bytes
+to read must be available. Otherwise HandleReadCompleted should not be
+called.
+
+This problem is possibly windows related, because the same example works
+fine with mono 1.0.1 on linux. (Sorry, I can't upgrade mono on linux,
+therefore I'm not sure about this).