Ignore:
Timestamp:
Dec 16, 2010, 8:12:05 PM (11 years ago)
Author:
Sven Rech
Message:

keysearcher

Location:
trunk/CrypPlugins/KeySearcher/Server
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/CrypPlugins/KeySearcher/Server/Job.cs

    r2208 r2214  
    2222public class JobResult : JobBase
    2323{
    24     public SortedDictionary<float, int> ResultList {get;set;}
     24    public List<KeyValuePair<float, int>> ResultList {get;set;}
    2525}
  • trunk/CrypPlugins/KeySearcher/Server/Server.cs

    r2208 r2214  
    2727    public void Run()
    2828    {
    29         var tcpListener = new TcpListener(IPAddress.Any, Port);
    30         tcpListener.Start();
    31         Console.WriteLine("Listening for client on port "+Port);
    32         while(true)
     29        TcpListener tcpListener = null;
     30        try
    3331        {
    34             TcpClient client = tcpListener.AcceptTcpClient();
    35             Console.WriteLine("Got connection from "+client);
    36             lock(connectedClients)
     32            tcpListener = new TcpListener(IPAddress.Any, Port);
     33            tcpListener.Start();
     34            Console.WriteLine("Listening for client on port " + Port);
     35            while (true)
    3736            {
    38                 connectedClients.Add(client.Client.RemoteEndPoint, client);
     37                TcpClient client = tcpListener.AcceptTcpClient();
     38                Console.WriteLine("Got connection from " + client);
     39                lock (connectedClients)
     40                {
     41                    connectedClients.Add(client.Client.RemoteEndPoint, client);
     42                }
     43                Thread clientThread = new Thread(new ParameterizedThreadStart(HandleClient));
     44                clientThread.Start(client);
    3945            }
    40             Thread clientThread = new Thread(new ParameterizedThreadStart(HandleClient));
    41             clientThread.Start(client);
    4246        }
     47        catch (ThreadInterruptedException)
     48        {
     49        }
     50
     51        tcpListener.Stop();
     52        foreach(var client in connectedClients)
     53            client.Value.Close();
    4354    }
    44 
    45 
     55   
    4656    public void SendJob(JobInput j, EndPoint i)
    4757    {
     
    91101                        {
    92102                            var jobGuid = wrapped.ReadString();
    93                             var resultList = new SortedDictionary<float, int>();
     103                            var resultList = new List<KeyValuePair<float, int>>();
    94104                            var resultListLength = wrapped.ReadInt();
    95105                            for (int c = 0; c < resultListLength; c++)
     
    97107                                var key = wrapped.ReadInt();
    98108                                var cost = wrapped.ReadFloat();
    99                                 resultList.Add(cost, key);
     109                                resultList.Add(new KeyValuePair<float, int>(cost, key));
    100110                            }
    101111
Note: See TracChangeset for help on using the changeset viewer.