c++ - 我需要一个静态函数的互斥量吗?

标签 c++ multithreading thread-safety mutex

我有一个带有静态函数的 C++ 类:

class Foo
{
public:
    static void bar(int &a)
    {
        a++;
    }
}

编辑:
作为参数传递的变量仅在调用范围内使用。所以它不会被另一个线程访问。

当我从单独的线程调用此函数时,是否必须使用 mutex

谢谢。

最佳答案

调用这个函数只需要线程局部资源,线程栈。因此答案是否定的。如果 int 变量可以被多个调用线程访问,则您将需要一个 mutex 变量

关于c++ - 我需要一个静态函数的互斥量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36497844/

相关文章:

c++ - C++中为什么可以继承接口(interface)

java - 为什么需要以毫秒为单位的超时以及为什么我必须为单独的 block 声明两个具有单独 run () 方法的类

c# - 为并发 C# 代码编写单元测试?

objective-c - 只读属性总是 "atomic"吗?

c++ - 为什么这个输出是0%?

c++ - 只有静态方法的类比命名空间更可取吗?

c++ - 如何在 C++ 中用更少的空间定义类字段/方法

c - linux中的并行处理

c# - 杀死多线程服务器的线程c#

c++ - 本地静态的线程安全初始化 : MSVC