Мне было интересно, является ли это лучшим способом и будет ли лучше UDP или TCP?
Вы обычно прибегаете к UDP для оптимизации скорости, когда TCP не быстрыйдостаточно и потеря пакета неудобна , а не тогда, когда не может быть обработан .Если вы не можете справиться с потерей части изображения при передаче, я сомневаюсь, что вы можете прибегнуть к UDP.
Более того, UDP вряд ли даст повышение производительности в вашем случае, так как вы будете использовать интерфейс обратной связи,Это означает, что все TCP-пакеты, скорее всего, будут доставлены в порядке и без потерь, что сделает TCP более дешевым.
Если вы пишете свое приложение, используя TCP, и в будущем по какой-то причине вы решите, что процессы больше не работаютна той же машине вам не придется менять свой код.
Наконец, TCP-сокеты проще в использовании, поэтому, если на вашем компьютере TCP не работает достаточно быстро, я бы придерживался TCP-сокетов.
гарантируется ли UDP, если он осуществляет локальную связь?
AFAIK, это поведение , не гарантируется .Скорее всего, это сработает большую часть времени, но если вы не найдете цитату из соответствующей документации, я бы на это не рассчитывал.
Могу ли я использовать именованные каналы для отправки поверх изображения?
Да, именованные каналы очень похожи на сокеты, но известно, что они медленные.