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;
查看全文
相关阅读:
Oracle-增加字段
Oracle数据库将varchar类型的字段改为Clob类型
将Oracle数据库字段长度进行修改
http请求util
读取excel文件后,将一行数据封装成一个对象,多行返回一个map对象即可
使用tushare 库查阅交易日历
python winsound模块
python可视化:matplotlib系列
期货、股指期权、ETF期权
股指期货
原文地址:https://www.cnblogs.com/tommyli/p/922589.html
最新文章
Go组件:go中grom学习
Vscode写go代码报错红色波浪线
vue+go环境快速搭建(使用vscode)
centos7安装mysql5.7.24,并使用system管理mysql
centos7安装redis5.0.3,并使用system管理redis
Jumpserver堡垒机安装配置全过程
防抖函数
物理像素自适应布局
Aioxs拦截器配置
访问者模式
热门文章
观察者模式&&发布者/订阅者模式
vue day01 基本指令实战
你好javascript day20
原生js实现Ajax方法
JSON字符串和JSON对象
你好javascript day19
MySql数据库中,字段类型为datetime,转换年月日的方法
Oracle数据库时间戳转换为年月日等时间格式
Oracle删除/创建/修改序列
Oracle数据库字段内容前添加字符串
Copyright © 2011-2022 走看看