private static void UpdatePrices(object state) { BackpackAPI instance = new BackpackAPI(); instance = instance.FetchBackpack(); ItemList itemlist = new ItemList(); itemlist.FetchItemList(ref itemlist); foreach (ItemInfo item in itemlist.items) { item.GetNames(); item.BPprice = instance.GetPrice(item, false); if (item.BPprice == 0) { continue; } item.FetchPrice(3); } itemlist = null; }
static void Main(string[] args) { mailer.Initialize(); // ItemInfo key = new ItemInfo { name = "Mann Co. Supply Crate Key", craftable = 1, quality = 6, cosmetic = false, numeric = "0", crate = 0, australium = 0, fullname = "Mann Co. Supply Crate Key", completename = "Mann Co. Supply Crate Key" }; //ItemInfo bud = new ItemInfo { name = "Earbuds", craftable = 1, quality = 6, cosmetic = true, numeric = "0", crate = 0, australium = 0, fullname = "Earbuds", completename = "Earbuds" }; bool done = false; BackpackAPI backpack = new BackpackAPI(); backpack = backpack.FetchBackpack(); backpack.GetCurrency(); ItemInfo.GetCurrency(); Stopwatch watch = new Stopwatch(); watch.Start(); ItemList itemlist = new ItemList(); itemlist.FetchItemList(ref itemlist); foreach (ItemInfo item in itemlist.items) { item.GetNames(); item.BPprice = backpack.GetPrice(item, false); if (item.BPprice == 0) { continue; } item.FetchPrice(3); } watch.Stop(); mailer.SendMail("time", watch.ElapsedMilliseconds.ToString()); Console.WriteLine("Initialization Done"); Parallel.Invoke( () => { using (new Timer(RefreshListings, null, TimeSpan.FromMinutes(0), TimeSpan.FromMinutes(40))) { while (true) { if (done) { break; } } } }, () => { using (new Timer(UpdatePrices, null, TimeSpan.FromMinutes(45), TimeSpan.FromMinutes(40))) { while (true) { if (done) { break; } } } }, () => { using (new Timer(UpdateClassifieds, null, TimeSpan.FromMinutes(5), TimeSpan.FromSeconds(5))) { while (true) { if (done) { break; } } } } ); }