|
Модераторы: LSD, AntonSaburov |
|
val |
|
|||
Program developer Профиль Группа: Участник Клуба Сообщений: 992 Регистрация: 14.1.2003 Где: г. Киев Репутация: нет Всего: 7 |
Привет, всем. Можно ли из разных потоков писать в один и тот же OutputStream без выполнения синхронизации...
-------------------- Терпимость - величайшее благо человечества... Ярчайший признак интеллекта – постоянно хорошее настроение… |
|||
|
||||
tipoc |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 60 Регистрация: 20.3.2004 Репутация: 1 Всего: 1 |
Очевидно нет. Объект то один, а потоков, которые работают с этим объектом - два. Хотя если методы, которые ты будешь вызывать у объекта OutputStream, каким-то образом уже синхронизированы, то синхронизация не потребуется.
|
|||
|
||||
ekr |
|
||||
...и это пройдет... Профиль Группа: Участник Сообщений: 359 Регистрация: 6.5.2007 Где: Moscow, RU Репутация: 3 Всего: 19 |
)))
Вспоминается старый анекдот: -Па, а эти грибы можно есть? -Можно, сынок, можно. Только умрешь потом...
Можно ))) Только данные могут попасть в поток не в том порядке, в каком предполагалось )
Ну почему же? Попробуйте для иллюстрации из двух потоков писать в консоль... Все работает. |
||||
|
|||||
tipoc |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 60 Регистрация: 20.3.2004 Репутация: 1 Всего: 1 |
Не факт, что будет всегда корректно выводить данные. Зависит от реализации потока OutputStream. Хотя в большинстве случаев подозреваю будет работать корректно. |
|||
|
||||
ekr |
|
|||
...и это пройдет... Профиль Группа: Участник Сообщений: 359 Регистрация: 6.5.2007 Где: Moscow, RU Репутация: 3 Всего: 19 |
Да, я тоже так считаю. Окончательно ситуацию может прояснить исходник класса. Есть ли у используемого XXXOutputStream модификаторы synchronized для методов или synchronized-секции внутри оных. |
|||
|
||||
Samotnik |
|
|||
Super star ! Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 8 Всего: 191 |
2 val
Вряд ли, даже если компилятор пропустит и прога запуститься на выполнение, вряд ли все сработает корректно, это как минимум "плохой стиль программирования"!!!! Мой те совет пиши либо два OutputStream ,либо синхронезируй. И ни ипацца |
|||
|
||||
ekr |
|
||||
...и это пройдет... Профиль Группа: Участник Сообщений: 359 Регистрация: 6.5.2007 Где: Moscow, RU Репутация: 3 Всего: 19 |
пропустит )
просто четко надо понимать возможные последствия несинхронизированной записи |
||||
|
|||||
Samotnik |
|
|||
Super star ! Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 8 Всего: 191 |
Ну оно конечно так, всегда нуна представлять че будет при написании данного кода. Но иногда сидиш продумываеш, пишишь, затем запускаеш, а на экране или беконечный цикл или ексепшены выскакивают один за другим. Или еще какая нить хрень. Вод для этого и следует читать разделы "хороший стиль программирования", т.к. у людей это все было и они могут че нить дельное посоветывать!!!! |
|||
|
||||
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |