Java
Что сложного в многопоточной разработке ПО
Почему многие считают что это очень сложно? Что добавляет сложности?
да нет не какой сложности, особенно в чате на 200 человек где каждого нужно уведомить о сообщении в зависимости от роли и подписки черных списков в реал тайме)))) немного сарказма
Михаил Базилевский
Не понял сарказма.
для тебя это просто? тогда почему столько вопросов ни о чём и ленивые запросы найти тебе какие-то курсы?...
Основная проблема многопоточости это то что ява сама по себе старый тормознутый мамонт, ну а создание потока является очень дорогостоящей операцией, поэтому я до сих пор не видел ни одного нормального десктопного приложения на ява. Ну а самая главная проблема не создать поток, а прибить его по требованию в какой то определенной ситуации, обычно все строится вокруг этого момента.
Сложно дебажить. Не знаю ни одного IDE, где бы дебаггер адекватно отрабатывал многопоток. Фактически, это программирование в слепую. Ты сначала пишешь функцию, шлифуешь её до предела. А потом вставляешь в многопоток, скрестив пальцы и надеясь, что "всё будет хорошо".
Виктор Бухов
Может потому что ява дрочь?
Ну раз несложно, то хорошо
Михаил Базилевский
Разве я говорил или намекал, что это легко?
добавляет сложности правильное использование и освобождение потоков, одно дело писать с использованием Spring'a, где все работает из коробки, каждый запрос в отдельном потоке, и всё написано за вас, а если вам нужен ScheduledThreadPool вы просто аннотацию @Scheduled ставите и всё круто. Другое дело, если вы сами попробуете писать используя Thread, Runnable, делать start, join, синхронизироваться на объектах в коде, понимать кучу тонких вещей. Даже люди с 5-6 годами опыта на собеседовании теряются когда их спрашивают про volatile, happend before и прочее. Да у нас есть java.util.concurrent с его Пулами и Атомиками и это круто, но даже с их помощью что-то стоящее написать не многие смогут.
Николай Зеленин
Кто этот человек, который с 6 летним опытом на java потерялся в volatile? Это же основы многопоточности. Самым первым проходят...
Похожие вопросы
- Вопросы по андроид разработке от новичка
- Разработка на Java
- Разработка мобильного приложения
- Программирование на языке Java в интегрированной среде разработки NetBeans. Желательно с объяснением!
- Важен ли английский язык для изучения программирования java,android,и frontend-разработки
- Важен ли многопоточный процессор? Программы есть многопоточные и нет?
- Насколько сложна в разработке и производстве такая техника? (по 10ти баллам) и что самое сложное?
- Как Вы думаете "КАЛАШНИКОВ" был нашей разработкой или скопирована с немецкого стрелкового автомата "ШМАЙССЕРА"???
- Почему все зациклены на Калашникове, присвоившем разработки Шмайсера себе, ведь в России есть и другие конструкторы?
- Раньше при СССР очень развивалось разработка и производство отечественных вычислительных систем и компьютеров. внутри..