2
internal static void ExecuteCommand(NLO nlo)
{
    switch (nlo.action)
    {
        //synchronize each method in case
        case (NLO.Actions.SET):
            swSet(nlo);
            break;
        case (NLO.Actions.ADD):
            swAdd(nlo);
            break;
        default:
            throw new System.Exception("Error");
            //break;
    }
    return;
}

各メソッドswSetをロックして並列でswAdd実行できるようにしたいがswSet、それ自体と同時に実行しないようにロックしたいswAdd

各ケースにロックを設定する、またはメソッド自体にロックを設定する、またはメソッドにロックを設定する最も簡単な方法はあり[MethodImpl(MethodImplOptions.Synchronized)] ますか?

最後の解決策はすべてのメソッドをロックしますか?

4

1 に答える 1