线程安全性[英] Thread safety

问题描述

以下线程是否安全:

1. 假设 Object 是任何简单的对象
对象* fn()
{
对象 *p = new Object();
返回p;
}

2. 按值返回线程安全吗?

3. int *p = new int
这个线程安全吗?

谢谢

推荐答案

2007-06-06 15:29,ar********@gmail.com 写道:
以下线程是否安全:
这不是这个小组的问题,因为 C++ 没有定义
线程,你应该为你的平台在一个小组中问这样的问题/
线程库.
1. 假设 Object 是任何简单的对象
对象* fn()
{
对象 *p = new Object();
返回p;
}
如果分配器是线程安全的,那么是的.
2. 按值返回线程安全吗?
堆栈上的所有内容本质上都应该是线程安全的.
3. int *p = new int
这个线程安全吗?
见1.

--
Erik Wikstr?m

6 月 6 日上午 8:29,arun.da...@gmail.com 写道:
以下线程是否安全:
1. 假设 Object 是任何简单的对象
对象* fn()
{
对象 *p = new Object();
返回 p;

}
关于这个(1)我没有看到伤害,即使我不会这样做,
>
2. 按值返回线程安全吗?

3. int *p = 新的 int
而这个,我认为这毫无意义.
这个线程安全吗?

谢谢


6 月 6 日晚上 8 点 29 分,arun.da...@gmail.com 写道:
以下线程是否安全:

1. 假设 Object 是任何简单的对象
对象* fn()
{
对象 *p = new Object();
返回 p;

}

2. 按值返回线程安全吗?

3. int *p = new int
这个线程安全吗?

谢谢
每个线程都有自己的堆栈和寄存器帧.所以一切
不访问全局分配的对象是安全的.在您的代码中,作为
是的,只有第三种情况看起来像它在全局空间中(再次,as
它在你的帖子中).


本文地址:https://www.itbaoku.cn/post/1050540.html