Можно ли использовать один сокет из разных потоков?
Вопрос навеян «нестандартным» тестовым заданием, мне бы и в голову не пришло делать такое самому.
Проблема стоит так: есть подключенный сокет (1шт), есть несколько потоков-читателей и потоков-писателей, которые должны с ним работать. Количество и тех, и других произвольное.
Я немало видел сетевых многопоточных приложений, но такой сценарий использования встречаю первый раз. Это вообще возможно, особенно на неблокирующем сокете? И самое главное - зачем это может быть нужно?
Думаю над этим уже с полчаса, разумных идей пока не появилось.