C++ では、静的メンバー関数にローカル変数がある場合、それらのローカル変数も暗黙的に静的であることを意味しますか、それとも本当にローカルですか?
例:
static void myClass::somefunc(int someint)
{
int myint = someint; // is myint really a local variable or does it change due to the static qualifier at function level?
}
また、この関数を実行しているスレッド プールとは別のスレッドですが、myint をロックで保護する必要がありますか? 渡されるすべての値が異なり、互いに関係がないと仮定します。
編集:答えてくれてありがとう。boost::shared_ptr<T>
では、このオブジェクトが別のスレッドによって同時に使用されないことを知っていて、を渡したらどうなるでしょうか? (それを本当に保証できるかどうかはわかりませんが、できますか?)
生のptrが渡されたと思いますが、それがいたるところで使用されている場合、何らかの保護が必要でしょうか?