当前位置:七道奇文章资讯编程技术VC/C++编程
日期:2011-03-22 13:55:00  来源:本站整理

闲谈C++ Builder多线程编程技术[VC/C++编程]

赞助商链接



  本文“闲谈C++ Builder多线程编程技术[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

摘 要:本文简单介绍了Windows环境下举行多线程编程的意义,重点谈论了C++Builder环境下开辟多线程利用程序这一问题,并通过实现生产者-消费者问题,帮我们更好地理解同步概念及其实现办法.

关键词:多线程;同步;生产者-消费者;C++Builder

线程之可行性

在很多情形下,大概需求为程序成立线程.这里给出此中一些大概性:

(1)假如成立的是一个多文档接口(Multiple Document Interface,MDI)程序,那么为每个窗口分配一个线程就显得非常重要了,比方,关于一个通过量个Modem同时衔接到多个主机的MDI通信程序而言,假如每个窗口都有它自己的线程来和一个主机通信,那么整个事情就简化很多.

(2)假如利用的是一台有多个处理器的机械,并但愿充分操纵全部大概得到的CPU资源,那么就需求将利用程序分化成多个线程.Windows2000中CPU的划分单位为线程.因此,假如程序只包含一个线程,那么,默许环境下该程序只能利用此中一个CPU.但是,假如将此程序划分为多个线程,那么Windows2000便可以在差别的CPU上运行各个线程.

(3)在后台运行的某些任务的同时,要求用户还可以持续利用利用程序举行工作.操纵线程很简单实现这点.比方:可以将一些冗长的重算、页面格局化操作、文件的读写等活动都放在单独的线程中,使其在后台运行,而不会对用户造成影响.

同步

撰写多线程程序的一个最具挑衅性的问题就是:若何让一个线程和另一个线程合作.这引出了一个非常重要的问题:同步.所谓同步是指进程、线程间彼此通信时避免破坏各自数据的本领.Windows环境下的同步问题是由Win32系统的CPU时间片分配方法惹起的.固然在某一时刻,只有一个线程占用CPU(单CPU)时间,但是无法知道在什么时刻,在什么地方线程被打断,这样若何保证线程之间不破坏彼此的数据就显得分外重要.同步问题是如此重要,也相当风趣,因而吸引了不少学者对他举行研究,由此产成了一系列经典的进程同步问题,此中较有代表性的是"生产者-消费者问题"、"读者-写者问题""哲学家进餐问题"等.在此,本文扼要谈论了C++Builder平台下若何操纵多线程编程技术实现"生产者-消费者"问题,帮忙我们更好得理解同步概念及其实现办法.


  以上是“闲谈C++ Builder多线程编程技术[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 闲谈C++ Builder多线程编程技术
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .