共享和局部变量C ++

时间:2014-01-10 13:31:24

标签: c++ multithreading

我需要为我正在开发的文件系统中的读者编写问题实现解决方案。我在互联网上搜索,发现了Wikipedia solution。由于我被告知不存在饥饿,我选择了第三种解决方案。现在,我是多线程编程的新手,我有一个问题。如何分离共享和局部变量?我想在每个文件对象中实例化一个ReadersWriters类来管理对该文件的访问,因此每个线程都需要拥有它自己的prev和当前局部变量,并且所有这些都需要共享nreaders变量。我想将它们放在ReadersWriters类中。

1 个答案:

答案 0 :(得分:0)

据我所知,父线程只有两种方式与子线程共享数据。

  1. 全球变量
  2. 在创建子线程期间通过指针传递它。
  3. 显然,可以在任何现有对象上添加新指针。

    本地变量保持线程本地,除非你做了一些事情来阻止它们这样做。请记住,每个线程都有自己的堆栈。