节点中的块范围问题

时间:2016-06-16 20:25:06

标签: javascript node.js mongodb scope ecmascript-6

我在Node中遇到块绑定问题。我试图从数据库中构建一个包含一些统计数据的对象。我遇到的问题是对象在一个mongoose db调用中被定义得很好,但在它之外是未定义的。

我也尝试将它作为一个数组并执行stats.push(),以及使用setTimeout(设置为300毫秒)的两种方式。有什么建议?我可以对我想要的模型做一个方法,但我宁愿了解我在这里做错了什么。

private static void CheckProxy(object state)
{
    var u = user[0];
    var p = pass[0];
    var l = new List<MyIP>();

    l.Add(new MyIP { IP = "192.168.1.1" });
    l.Add(new MyIP { IP = "192.168.1.2" });
    l.Add(new MyIP { IP = "192.168.1.3" });


    Parallel.ForEach(l.ToArray(), (ip_item) =>
    {
        try
        {
            using (var client = new ProxyClient(ip_item, u, p))
            {
                Console.WriteLine(ip_item, user, pass);
                client.Connect();
                item.AcceptsConnection = client.IsConnected;
            }
        }
        catch
        {
            lock(l)
                l.Remove(item);
        }
    });
    foreach (var item in l)
    {
        if (item.AcceptsConnection == true)
        {
            WriteToFile(user[0], pass[0]);
        }
        Console.WriteLine(item.IP + " is " + (item.AcceptsConnection) + " accepts connections" + " doesn not accept connections");
    }
}

0 个答案:

没有答案