还有,程序一旦运行,窗体就不可以移动,同求指点....本人菜鸟,刚接触此类东西,欢迎指证批评.....public static void ThreadPoolStart(Session session)
{
XPCollection xpc = Quantum.ElectricCommon.BLL.ShopHelper.GetAllShopCollection(session, new GroupOperator(), new SortingCollection());
int n = xpc.Count;
ManualResetEvent[] events = new ManualResetEvent[n];
for (int i = 0; i < n; i++)
{
Quantum.ElectricCommon.Model.Shop shop = xpc[i] as Quantum.ElectricCommon.Model.Shop; //Quantum.ElectricCommon.Model.Shop shop = Quantum.ElectricCommon.BLL.ShopHelper.GetShopByOid(session, 2);
Quantum.Util.LogUtil.WriteLog(shop.ShopName, "订单同步开始" + DateTime.Now.ToString("F"));
long pagesize = 40;
DateTime bgtime = Convert.ToDateTime(DateTime.Now.ToShortDateString());
DateTime edtime = DateTime.Now;
if (shop.LastTime != DateTime.MinValue)
{
if (shop.LastTime.Day != DateTime.Now.Day)
{
bgtime = Convert.ToDateTime(DateTime.Now.ToShortDateString());
edtime = DateTime.Now;
}
else
{
bgtime = shop.LastTime.AddMinutes(-20);
edtime = shop.LastTime.AddMinutes(40);
} }
if (edtime > DateTime.Now)
{
bgtime = DateTime.Now.AddHours(-5);
edtime = DateTime.Now;
}
long count = Quantum.ElectricCommon.BLL.Taobao.getTradeCount(session, shop, 1, 40, "WAIT_SELLER_SEND_GOODS", bgtime, edtime);
if (count != 0)
{
long pages = count / pagesize;
if (count % pagesize != 0)
pages++;
events[i] = new ManualResetEvent(false);
Quantum.ElectricCommon.BLL.Taobao tb = new Quantum.ElectricCommon.BLL.Taobao(events[i]);
ThreadPool.QueueUserWorkItem(delegate(object notUsed1) { tb.getTradeID(session, shop, Convert.ToInt32(pages), 40, "WAIT_SELLER_SEND_GOODS", bgtime, edtime); });
}
else
{
Quantum.Util.LogUtil.WriteLog(shop.ShopName, "订单在" + bgtime.ToString("F") + "至" + edtime.ToString("F") + "抓单结束");
events[i] = new ManualResetEvent(false);
events[i].Set();
}
}
ManualResetEvent.WaitAll(events);
Thread.Sleep(10000);
ThreadPoolStart(session);
}
C#线程池
{
XPCollection xpc = Quantum.ElectricCommon.BLL.ShopHelper.GetAllShopCollection(session, new GroupOperator(), new SortingCollection());
int n = xpc.Count;
ManualResetEvent[] events = new ManualResetEvent[n];
for (int i = 0; i < n; i++)
{
Quantum.ElectricCommon.Model.Shop shop = xpc[i] as Quantum.ElectricCommon.Model.Shop; //Quantum.ElectricCommon.Model.Shop shop = Quantum.ElectricCommon.BLL.ShopHelper.GetShopByOid(session, 2);
Quantum.Util.LogUtil.WriteLog(shop.ShopName, "订单同步开始" + DateTime.Now.ToString("F"));
long pagesize = 40;
DateTime bgtime = Convert.ToDateTime(DateTime.Now.ToShortDateString());
DateTime edtime = DateTime.Now;
if (shop.LastTime != DateTime.MinValue)
{
if (shop.LastTime.Day != DateTime.Now.Day)
{
bgtime = Convert.ToDateTime(DateTime.Now.ToShortDateString());
edtime = DateTime.Now;
}
else
{
bgtime = shop.LastTime.AddMinutes(-20);
edtime = shop.LastTime.AddMinutes(40);
} }
if (edtime > DateTime.Now)
{
bgtime = DateTime.Now.AddHours(-5);
edtime = DateTime.Now;
}
long count = Quantum.ElectricCommon.BLL.Taobao.getTradeCount(session, shop, 1, 40, "WAIT_SELLER_SEND_GOODS", bgtime, edtime);
if (count != 0)
{
long pages = count / pagesize;
if (count % pagesize != 0)
pages++;
events[i] = new ManualResetEvent(false);
Quantum.ElectricCommon.BLL.Taobao tb = new Quantum.ElectricCommon.BLL.Taobao(events[i]);
ThreadPool.QueueUserWorkItem(delegate(object notUsed1) { tb.getTradeID(session, shop, Convert.ToInt32(pages), 40, "WAIT_SELLER_SEND_GOODS", bgtime, edtime); });
}
else
{
Quantum.Util.LogUtil.WriteLog(shop.ShopName, "订单在" + bgtime.ToString("F") + "至" + edtime.ToString("F") + "抓单结束");
events[i] = new ManualResetEvent(false);
events[i].Set();
}
}
ManualResetEvent.WaitAll(events);
Thread.Sleep(10000);
ThreadPoolStart(session);
}
C#线程池
自己顶.......
自己顶.......
自己顶.......
自己顶.......
自己顶.......
自己顶.......
自己顶.......
自己顶.......
不能沉啊,木有人么...求求你们帮帮我吧