C ++模板 - 函数螺纹安全吗?
-
28-09-2019 - |
题
谷歌搜索什么都没找到。它们是在使用点创建的,还是在实例之间共享的通用零件?
(模板类也一样?)
解决方案
在编译时创建模板功能。模板属性完全与线程安全性。
其他提示
它们不超过任何其他类型的功能或多或少的线程安全。
我唯一能想到的线程安全受到影响的方法是,如果 someMethod<typename T>()
线程不是安全的,那么线程仍可以操作 someMethod<int>()
而另一个工作 someMethod<std:string>()
, ,只要缺乏线程安全性并非来自他们的两个非呼吁功能。
但是,其他事情保证只有一个线程一次使用特定类型的特定任务似乎不太可能。
模板函数简单地...编译器使用的模板来生成“正常”函数。因此,它与普通函数相同,没有差异。
不隶属于 StackOverflow