On Mon, 2005-12-19 at 18:47 +0800, Li wrote:
> hello sir,
> With your advice I update my redhat9 to fedral4(kernel 2.6.11), but the
> socket still can't be set timeout property. What is wrong with it? And I also
> have a problem with Process.GetProcesses(), it can't get all processes in
> current machine.
> Would you do me a favor to help me again please? Thank you very much!
> Here is the source code:
>
> using System;
> using System.Net.Sockets;
> using System.Net;
> using System.Runtime.InteropServices;
> using System.IO;
> using System.Diagnostics;
> namespace CommTest
> {
> class Class1
> {
> [STAThread]
> static void Main(string[] args)
> {
> //it can't work in fedral core 4(kernel 2.6.11),but
> works well in winXP
> Socket TCPSocket=new
> Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
> //following 2 functions cause a exception:non-block
> socket would block
>
> TCPSocket.SetSocketOption(SocketOptionLevel.Socket,SocketOptionName.SendTimeout,1000);
>
> TCPSocket.SetSocketOption(SocketOptionLevel.Socket,SocketOptionName.ReceiveTimeout,1000);
You have to Connect() or Accept() before setting the timeout.
-Gonzalo
_______________________________________________
Mono-list maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-list