![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Sandric |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 7.12.2007 Репутация: нет Всего: нет |
Люди, если я пойму почему не пашит это, наверно сделаю лабу! F1!
вот, что выдаёт:
Кто знает, почему не по порядку идёт, отпишитесь! Это сообщение отредактировал(а) powerOn - 7.12.2007, 21:27 |
||||
|
|||||
| Aristotelb |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 23.3.2007 Где: Саратов Репутация: 4 Всего: 5 |
1. почему wait\notifyAll не в synhronized блоке?
2. почему wait - вызывается у myT а notifyAll у this? |
|||
|
||||
| Sandric |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 7.12.2007 Репутация: нет Всего: нет |
Ну а как надо?
wait notifyAll в synchronized методе класса, а wait вызывается для переданного екз. myThread, а notifyAll незнаю, я ж всем потокам разрешаю возобоновлять работу. Отредактируй так чтоб работало, плз |
|||
|
||||
| Sandric |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 7.12.2007 Репутация: нет Всего: нет |
Ой, я дико извиняюсь, не стесняйтесь, материтесь, я дужку забыл, гыгы (голосом Регины Дубовицкой...) код такой:
Код:
а ответ теперь такой:
Короче, они не просыпаются, а как тогда сделать, что б просыпались? |
||||
|
|||||
| Aristotelb |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 23.3.2007 Где: Саратов Репутация: 4 Всего: 5 |
Незнаю что редактировать, ибо в корне неверно
что должно получиться-то? |
|||
|
||||
| Antropoid |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 786 Регистрация: 1.6.2006 Где: &Ukraine==Ode ssa Репутация: 2 Всего: 16 |
-------------------- ![]() Задыхаясь от восторга заниматься чепухой. |
|||
|
||||
| Sandric |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 7.12.2007 Репутация: нет Всего: нет |
ну должно по очереди писать вход и выход из синхронайзед функции.
Вот у меня сначала s_name = 2, значит, оно пишет, что 2 поток вошел в функцию, и уснул (wait), потом вошел 1, не уснул, (так и нужно), изменил s_name - оно показывает имя пред. потока, и вышел, "как бы" включил все потоки (отменил wait в очереди потоков) и вышел, снова вошёл, вып. условие по которому он прошлый раз уже входил, и сейчас не его очередь, и он должен уснуть, и все. А нада, чтобы "включённый" 2 поток предыдущим потоком заходил в функцию и так продолжалось 10 раз для каждого потока. Короче, как возобновить работу потока, у меня notifyAll() не работает получается? |
|||
|
||||
| Sandric |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 7.12.2007 Репутация: нет Всего: нет |
От обработчика исключения смысл не поменялся - просто начало писать ошибку, но оно заработало! Я понял, нада было писать не текущий_поток.wait а просто wait!
|
|||
|
||||
| Aristotelb |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 23.3.2007 Где: Саратов Репутация: 4 Всего: 5 |
Это сообщение отредактировал(а) Aristotelb - 7.12.2007, 23:44 |
|||
|
||||
| Antropoid |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 786 Регистрация: 1.6.2006 Где: &Ukraine==Ode ssa Репутация: 2 Всего: 16 |
нет. Сначала заходит 1 поток, и оно пишет, что 1 поток воел в функцию. с чего ты взял, что потом войдет 1 поток??? Есть четкая формулировка задания? Добавлено через 3 минуты и 35 секунд
какую ошибку? У меня все ОК. Так это ж одно и то же. -------------------- ![]() Задыхаясь от восторга заниматься чепухой. |
||||
|
|||||
| Sandric |
|
||||||||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 7.12.2007 Репутация: нет Всего: нет |
То у меня писалось раньше, просто потоки видно создавались одновременно, и иногда первым заходил 2, иногда первы1...
Ту, которую ты поставил в обработчике - выводило "iii", и снова ишло не правильно.
Не знаю, когда я так писал, потоки потом не просыпались. Вот даже Aristotelb написал(а)
Вобщем, спасибо всем за ответы, вы мне очень помогли. |
||||||||
|
|||||||||
| Aristotelb |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 23.3.2007 Где: Саратов Репутация: 4 Всего: 5 |
||||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |