进程与线程的关系讨论

cernet 2003-09-12 05:24:52
今天看到一句话"进程是分配资源的基本单位,线程是调度与执行的基本单位.线程对进程的整个主存空间都有存取权限"

请问大家平时在设计多线程程序时"线程对进程的整个主存空间都有存取权限"这句话的具体体现.我好像没有感觉到一样.

麻烦大家举举例子.在这里谢过大家了
...全文
51 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
vcforever 2003-09-13
  • 打赏
  • 举报
回复
线程可以访问所在进程中的所有共享资源!
flinming 2003-09-13
  • 打赏
  • 举报
回复
学习。。up。。
JoeRen 2003-09-13
  • 打赏
  • 举报
回复
To: gzshd(郁闷)
非volatile的变量并非不能由其他线程访问,你要访问的话完全是可以的。
但是在多线程访问的时候这样做会引发问题,而且这些问题在调试版里面是看不到的,因为问题出在编译器的优化上。用volatile声明的变量不会被编译器优化,所以可以保证安全,但非volatile的变量将会被编译器假定为在语句执行期间不会变化,因此可能依赖于已加载于寄存器的值。
xtmzl 2003-09-12
  • 打赏
  • 举报
回复
没什么好讲的。
做一个例子程序。什么都懂了。
apcad 2003-09-12
  • 打赏
  • 举报
回复
进程和线程的关系:
1:线程是进程的一个组成部分。一个进程可以有多个线程,而且至少有一个可执行的线程;2:进程的多个线程都在进程的地址空间内活动;
3:资源是分配给进程的,而不是分配给线程的。线程需要资源时,系统从进程的资源配额中 扣除并分配给它;
4:处理机调度的基本单位是线程,线程之间竞争处理机,真正在处理机运行的是线程;
5:线程在执行过程中,需要同步。
cwanter 2003-09-12
  • 打赏
  • 举报
回复
每个进程只有一个地址空间~
gzshd 2003-09-12
  • 打赏
  • 举报
回复
线程只能直接使用进程中标有volatile的变里,比如:
volatile int a=0;
int b=0;
在线程中可以给a赋值或读取a的值,但不能操作b
叶子哟 2003-09-12
  • 打赏
  • 举报
回复
线程可以访问进程的所有东东了!像进程中的变量呀,句柄等
只不过有时要考虑同步的问题罢了!

cernet 2003-09-12
  • 打赏
  • 举报
回复
NoBody

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧