zoukankan
html css js c++ java
多线程,委托例子
多线程:
Type text here
class
ActiveDate
{
private
string
_CusID;
private
string
_Visitor;
private
int
_ShopNum;
private
int
_flag
=
0
;
public
int
Flag
{
get
{
return
_flag; }
set
{ _flag
=
value; }
}
public
string
CusID
{
get
{
return
_CusID; }
set
{ _CusID
=
value; }
}
public
string
Visitor
{
get
{
return
_Visitor; }
set
{ _Visitor
=
value; }
}
public
int
ShopNum
{
get
{
return
_ShopNum; }
set
{ _ShopNum
=
value; }
}
public
void
GetCustomerVisitor()
{
_Visitor
=
DAL.CRM.Common.Customer.GetCustomerVisitor(_CusID);
lock
(
this
)
{
_flag
++
;
}
}
public
void
GetCustomerShopNums()
{
_ShopNum
=
Convert.ToInt32(DAL.CRM.Common.Customer.GetCustomerShopNum(_CusID));
lock
(
this
)
{
_flag
++
;
}
}
}
Module.CRM.Customer.CustomerActiveDate date
=
new
Module.CRM.Customer.CustomerActiveDate();
ActiveDate ad
=
new
ActiveDate();
ad.CusID
=
customerID;
Thread tr1
=
new
Thread(
new
ThreadStart(ad.GetCustomerVisitor));
Thread tr2
=
new
Thread(
new
ThreadStart(ad.GetCustomerShopNums));
tr1.Start();
tr2.Start();
while
(
true
)
{
if
(ad.Flag
==
2
)
{
date.Visitor
=
ad.Visitor;
date.ShopNum
=
ad.ShopNum;
tr1.Abort();
tr2.Abort();
return
date;
}
}
委托:
delegate
string
myDelegate(String Name);
myDelegate d1
=
new
myDelegate(DAL.CRM.Common.Customer.GetCustomerVisitor);
myDelegate d2
=
new
myDelegate(DAL.CRM.Common.Customer.GetCustomerShopNum);
IAsyncResult i1
=
d1.BeginInvoke(customerID,
null
,
null
);
Module.CRM.Customer.CustomerActiveDate date
=
new
Module.CRM.Customer.CustomerActiveDate();
IAsyncResult i2
=
d2.BeginInvoke(customerID,
null
,
null
);
bool
_flag
=
false
;
while
(
!
_flag)
{
_flag
=
i1.IsCompleted
&&
i2.IsCompleted;
}
date.Visitor
=
d1.EndInvoke(i1);
date.ShopNum
=
Convert.ToInt32(d2.EndInvoke(i2));
return
date;
查看全文
相关阅读:
Linux中rsync备份数据使用实例
8个Date命令使用示例
Linux中如何使用alias命令
在LVM中恢复已删除的逻辑卷
使用Dmidecode获取硬件信息使用实例
Linux系统使用SSH登录之前如何显示横幅消息
在Linux中修改打开文件数量限制的3种方法
Linux中监控磁盘分区和使用情况的几个工具
如何解决Ubuntu提示没有找到ifconfig命令
Linux中ip命令的使用实例
原文地址:https://www.cnblogs.com/tommyli/p/922589.html
最新文章
声明函数有些以分号结尾,有些不以分号结尾,有什么不同
如何用函数式优雅的写一个增删改查@落雨
设计模式的优雅:函数式pipeline+策略模式实现复杂业务@落雨
Layui的落幕,是否预示一个时代的结束?
计算机编码
如何下载CCTV网站里的视频?
【SpringBoot/Thymeleaf】Thymeleaf目录设置
【Java/CountDownLatch】使用CountDownLatch实现睡眠排序
【SpringCloud】org.springframework.context.ApplicationContextException:Failed to start bean 'eurekaAutoServiceRegstration'
【Oracle】求同组最值(找每个部门最高薪水员工),分析函数相对于自联结(自连接)的优势
热门文章
【Mybatis】使用LambdaQueryWrapper后让控制台输出执行的SQL语句
【Mybatis】LambdaQueryWrapper用法示例
【oracle/语法】With语句的写法
【oracle】同是选出每个城市最年长女性,not exits 方案和 分析函数rank方案的巨大差距
【Java/加解密】不算加密的加密-base64加解密(使用Java8的Base64实现)
如果要给那些花儿编写一套数据库表
如何在JavaScript的实例对象中改写原型方法
如何在Visual Studio Code中用Mocha对TypeScript进行测试
如何保持DIV的垂直滚动条在底部
『论文笔记』SuperGlue
Copyright © 2011-2022 走看看