Я поддерживаю существующую систему, в которой предыдущие разработчики каждой операции выполняются в сокете, для которого требуется несколько потоков для чтения и записи, предыдущие разработчики выполняли операции ввода-вывода под контролем и мьютексом. есть ли требование взаимно исключать операции ввода-вывода сокета C? Или, поскольку сокеты полнодуплексные, использование мьютекса излишне? Только один поток
Я не сомневаюсь, что очередь обработки, в которую поток помещает объект, является разделяемой памятью, и необходимо позаботиться о ее взаимном исключении.