一个进程可以创建多个线程,其中一个为主线程,能否将进程等同于这个主线程?这些线程怎么样同步呢?嗯,我只听说进程同步,没有听说过线程同步。

解决方案 »

  1.   

    从win32的角度来看,进程含有内存和资源,被进程拥有的内存,理论上可达到2GB.资源包括核心对象(如file handles和线程),USER资源(如对话框和字符串),GDI资源(如Device Context和brushes).
    进程和内存并没有真正"做"什么事情.一旦CPU开始执行程序代码,你就有了一个"线程".
    进程和线程在处理同一个对象时,都需要同步.
    当在一个运行的程序(进程)内创建多个线程后,如果要对同一个对象操作,比如说串口等等,也需要同步.
      

  2.   

    进程就是进程,怎么可以等同于主线程呢。进程和线程存在着根本的差异,你可以把进程看做线程的容器,进程是不活拨的,他拥有地址空间,而代码的执行主要是线程。线程可以在进程的地址空间内分配内存。现成同步可以有很多方法,比如:信号量啊,临界资源等。也可以用WaitForSingleObject()或Sleep()等。
      

  3.   

    to: liuhongyong(荒原困兽) 
    呵呵,请不要着急,我从来都不会不给分的,毕竟人家热心帮助了我啊
    谢谢大家的回答
    嗯,我总是听别人说时钟同步
    我现在在设计一个仿真程序,想用多个线程,分别表示多个对立的仿真对象
    它们可以并发的操作
    但是仿真需要同步,我想采用上面我说的方法来同步各个仿真对象,可否?
      

  4.   

    各位老大,请帮忙推荐几本用vc开发系统软件的书,thanks