При написании кода, который будет использоваться из разных частей моего приложения, у меня иногда есть код, который может выполняться в потоке пользовательского интерфейса или нет.Я хотел бы избежать накладных расходов на Invoking в главном потоке из другого потока, который уже находится в основном потоке.Простой способ - сначала проверить InvokeRequired .Но действительно ли это нужно?Я бы ожидал, что система сама избежит накладных расходов изнутри Invoke .
Это правда, что я могу просто вызвать Invoke, и система будет избегать "Invoking", если в этом нет необходимости?