按MSDN上的介绍是不是应该理解为,在主调线程上启动BeginInvoke(...)后系统将"隐蔽的启动一个线程来处理这个委托实例.按照基于事件的异步编程模型来看,其只有BeginInvoke(...)而没有EndInvoke(IAsyncResult iar)他用其它方案代替了EndInvode(...)的结果返回,换句话说,委托在某种程度上封装了线程对象,即当用户调用BeginInvoke(...)时,就隐匿的启用了线程.
解决方案 »
- gps定位显示的软件用c#怎么开发,地图用什么?有做过的没
- 有谁了解软路由开发及C#在软路由开发中的应用?
- listview数据保存为文本和Word、Excel文件
- C# 实现拖拽功能
- 提问:怎么通过C#代码查询到U盘记录呢?
- 如何在C#中嵌入汇编?
- DataGridView的奇怪问题:输入数字时第一个数重复
- 如何用c#实现IE浏览器菜单的屏蔽?
- .NET中有没有类似SQL Server中的soundex或difference函数?
- 请问写好的WebService或是ASP.NET程序,怎么从开发的环境中移植到运行的服务器上?
- 什么叫线程上下文
- 有没有办法改变MdiContainer窗体那黑黑的背景???
private bool deleteTest()
{
for(int i=0;i<10000;i++)
for(int j=0;j<10000;j++) lmScrollText1.label1.Text = "哈哈~~ 成功了!"; return true;
} private void timer1_Tick(object sender, System.EventArgs e)
{ test test1 = new test(deleteTest);
lmScrollText1.BeginInvoke(test1);
}
改成
test1.BegionInoke();
不过后面说的问题的解决方法可参考其它相关文章?
http://yinh.cnblogs.com/archive/2005/05/25/162150.aspxhttp://www.yesky.com/20030225/1653758.shtml
TcpChannel chan = new TcpChannel();
try
{
ChannelServices.RegisterChannel(chan);
}
catch (Exception)
{
}
finally
{
ChannelServices.UnregisterChannel(chan);
}