Асинхронность и многопоточность.
От: PaulMinelly  
Дата: 05.09.08 15:54
Оценка:
Хотелось бы разобраться в терминах. Часто в книгах, алгоритмах и т.п. в реализации веб-сервера или какого-либо сервера вообще, что упоминается что это именно "асинхронный многопоточный" сервер. То что он "многопоточный" — ладно, тут все понятно, но что оначает здесь именно термин "асинхронный" и бывает ли обратное "синхронный многопоточный" сервер и как это может выглядеть?
Всегда ли обосновано употребление "асинхронный и многопоточный" одновременно и не является ли это тавтологией? Разве многопоточность сама по себе (без дополнительной синхронизации и блокировок, Мониторов) не означает сразу, что она асинхронная? Ведь как раз для того, чтобы сделать синхронизацию потоков и нужно приложить дополнительные усилия использованием sync-блоков object-переменных, блокировок и осуществлением синхронизации? Т.е. я понимаю так что если сделать простое многопоточное приложение без синхронизации — то оно и будет сразу автоматически асинхронным. А вот "синхронное многопоточное" приложение — это уже сложнее, где нужно знать специфику языка, блокировки, уметь использовать синхронизацию. Если здесь все правильно, тогда не понятно почему упоминание "асинхронности" часто встречаю контексте в книгах, примерах, в вакансиях при приеме на работу (извиняюсь линки нет) как что-то особенно крутое, требующее определенного знания и опыта от кандидата. Почему именно "асинхронный многопоточный", нет чтобы написать просто "многопоточный" сервер? Ведь как-раз понятие синхронности требует больших знаний и умений ее реализовать, чем асинхронность. Далее, если правильно рассуждаю, то можно ли за место "асинхронный многопточный" писать как просто "многопоточный".

К тому же бывают ли такие фигни:
1. Синхронный однопоточный сервер (не бывает?)
2. Асинхронный однопоточный сервер (не бывает?)
3. Асихронный многопоточный сервер (проще реализовать?)
4. Синхронный многопоточный сервер (сложнее реализовать?)
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>

05.09.08 20:52: Перенесено модератором из '.NET' — AndrewVK
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.