AsyncServerForm.SwarmMemory.distributeParallelCode C# (CSharp) Method

distributeParallelCode() public method

public distributeParallelCode ( string statement ) : void
statement string
return void
        public void distributeParallelCode(string[] statement)
        {   
            //1. get IP to # CPU
            List<string> calculationComputers = new List<string>();
            Hashtable IPtoCPU = new Hashtable();//should come from other modules
            int totalCPU = 0;
            foreach (DictionaryEntry allPeers in IPtoCPU)
            {
                foreach (DictionaryEntry permitted in permissions)
                {
                    string[] temp = (string[])permitted.Value;
                    if (allPeers.Key.ToString() == permitted.Key.ToString() && temp[0].ToString() == "true")
                    {
                        totalCPU = totalCPU + int.Parse(allPeers.Value.ToString());
                        calculationComputers.Add(permitted.Key.ToString());
                    }
                }
            }
            int LinePerCPU = (int)(statement.Length / totalCPU);
            string PortionStatement = PortionsIPXML(LinePerCPU, statement, calculationComputers, IPtoCPU);
            List<string> endPoints = Peers();            
            foreach (string dest in endPoints)
            {
                ThreadProc thrd = new ThreadProc(dest.ToString(), PortionStatement);
                Thread t = new Thread(new ThreadStart(thrd.sendThread));
                t.Start();
            }            
        }
    }