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

Reply via email to