コード例 #1
0
ファイル: DhtSpider.cs プロジェクト: tcz717/DhtWalker
 public void Send(DhtMessage msg, IPEndPoint endpoint)
 {
     if (msg is FindNodeResponse && MessageLoop.GetWaitSendCount() > MaxSendQueue)
     {
         return;
     }
     MessageLoop.EnqueueSend(msg, endpoint);
 }
コード例 #2
0
ファイル: DhtSpider.cs プロジェクト: tcz717/DhtWalker
        public void SendFindNodes()
        {
            var waitsend = MessageLoop.GetWaitSendCount();

            lock (NextNodes)
            {
                for (int i = 0; i < NextNodes.Count && waitsend < MaxFindSendPer; i++)
                {
                    var next = NextNodes.Dequeue();
                    SendFindNode(next);
                    waitsend++;
                }
            }
        }