加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

高手论声明VB.NET事件

发布时间:2020-12-16 22:18:06 所属栏目:大数据 来源:网络整理
导读:如果在运行线程后采用循环查询的方法显然影响了交互性,VB.NET事件是从线程方法返回数据的好方法,文章有详细的介绍。 AD: VB.NET经过长时间的发展,很多用户都很了解VB.NET事件了,这里我发表一下个人理解,和大家讨论讨论。调用了线程的start方法,并不能
如果在运行线程后采用循环查询的方法显然影响了交互性,VB.NET事件是从线程方法返回数据的好方法,文章有详细的介绍。

AD:


VB.NET经过长时间的发展,很多用户都很了解VB.NET事件了,这里我发表一下个人理解,和大家讨论讨论。调用了线程的start方法,并不能确保其中的方法马上执行完,而要得到数据访问的结果又必须等其中的方法执行完毕。

如果在运行线程后采用循环查询的方法显然影响了交互性,事件是从线程方法返回数据的好方法。只要在线程方法所在的类中定义一个事件,在线程方法中发出事件,而在窗体类中生成代理。线程是操作系统分配处理器时间的基本单元,线程可以在单个执行线程执行的同时运行多个活动,支持抢先多任务处理的操作系统可以创建多个线程并通过时间片轮转的方式使它们同时运行。在需要良好用户交互的应用以及与网络和数据库进行通讯的应用中,使用多线程能提供良好的交互体验,能对用户的要求做出快速的反应。

首先在dealDataBase类声明后加进VB.NET事件:

   
   
  1. PublicClassdealDataBase
  2. PublicEventGetDataComplete(ByValeAsDtatTable)
  3. EndClass

在类dealDataBase的GetDataFromDataBase()方法中加入发出事件的代码,放在m_sqlDataAdapter.Fill(m_table)后:

   
   
  1. PublicsubGetDataFromDataBase()
  2. m_sqlDataAdapter.Fill(m_table)
  3. RasiseEventGetDataComplete(m_table)
  4. EndSub

下面在窗体类中生成代理

   
   
  1. PrivateSubdealData(ByValeAsDataTable)
  2. '处理数据表
  3. EndSub

在创建线程并运行线程的代码中进行事件连接,事件连接代码放在运行线程前,dealDataBase类实例化后:

   
   
  1. AddHandlermyDB.GetDataComplete,AddressOfdealData

这样,当线程方法执行完毕就会发出事件,而dealData方法会响应VB.NET事件并做出处理。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读