|
|
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
Как можно забрать данные из отдельно выполняемого потока ? Структура программы примерно следующая: Main -> Обновление данных по схемам Main -> Ожидание данных для обработки и их обработка по заданной схеме То есть поток выполняется бесконечно - как из него передать информацию туда откуда он вызывался ? Чтобы потом уже можно было работать с этой информацией. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 17:08:16 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
из отдельно работающей ява машины вы наверное имели ввиду? тогда RMI вам поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 17:10:17 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
не совсем понял ? Прога будет выполнятся на одной виртуальной машине а что за RMI, простите не знаю что это..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 17:15:44 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
При инициализации дополнительного потока передать ему ссылку на главный поток и дергать какой-либо метод главного (типа "накачать данные") из дополнительного. Что может быть проще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 18:11:26 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
он жеПри инициализации дополнительного потока передать ему ссылку на главный поток и дергать какой-либо метод главного (типа "накачать данные") из дополнительного. Что может быть проще? по-моему у него нету главного и дополнительного потока. автор Main -> Обновление данных по схемам Main -> Ожидание данных для обработки и их обработка по заданной схеме ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 18:22:22 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
muchacho по-моему у него нету главного и дополнительного потока. Абсолютно монопенисуально - главный и зависимый, либо оба дочерние. Ну какая разница-то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 18:43:36 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
Дочерний и главный поток, что-то странное (или я?..) Обычными методами синхронизации решается задача, смотреть в сторону задачи "писатель и читатель" - решений должно быть море в интернете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 19:51:36 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
во! человек дело сказал. Ну или нанимайте меня например :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 19:58:17 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
Leonidv У автора проблема в том, чтобы понять - куда писать-то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 20:00:41 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
эээ, забыл пояснить: main это public static void метод, являющийся точкой входа в приложение, другими словами, вы описали две разные точки входа (скажем разными bat файлами запускаются jar №1 и jar №2). Именно из этого был сделан вывод о разных средах выполнения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 20:02:21 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
он жеПри инициализации дополнительного потока передать ему ссылку на главный поток и дергать какой-либо метод главного (типа "накачать данные") из дополнительного. Что может быть проще?Интересно, как это будет выглядеть :) Как вы собираетесь "дернуть" метод другого потока? И что вообще значит метод другого потока? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2006, 12:29:09 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
JozicИнтересно, как это будет выглядеть :) Как вы собираетесь "дернуть" метод другого потока? И что вообще значит метод другого потока? Если мы имеем в виде поток Thread (а я лично его и имею в виду) - элементарно. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2006, 13:05:01 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
Я думаю, не будет проблем понять - как вызывать и метод основного (main'а). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2006, 13:05:33 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
Да, кстати, автор надеюсь понял - нужно не забирать данные из потока, а поток должен передавать данные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2006, 13:12:07 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
он жеДа, кстати, автор надеюсь понял - нужно не забирать данные из потока, а поток должен передавать данные. Спасибо за то что откликнулись..... Я уже пробовал передавать данные в main но выдаёт ошибки я создавал отдельный класс для принятия данных как в main так и в другом классе. Выдавало ошибку что данные должны быть статик - ставил как просило потом уже в процессе запуска выдавало ошибку. Короче я запутался ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2006, 13:53:04 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
http://www.etu1362.spb.ru/ в информации лежать мои лабораторные работы к системам реального времени. Посмотрите, может поможет. Я их год назад делал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2006, 14:24:11 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
он же JozicИнтересно, как это будет выглядеть :) Как вы собираетесь "дернуть" метод другого потока? И что вообще значит метод другого потока? Если мы имеем в виде поток Thread (а я лично его и имею в виду) - элементарно. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2006, 14:43:00 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
мде... а код то можно ваш увидеть, а то чего тока не наплели... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2006, 15:20:20 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
JozicВо-первых у Runnable нет метода callme(), а во-вторых вызов метода callme() произойдет в текущем потоке, даже если этот метод - метод объекта Thread (имхо стоит называть вещи своими именами :) ). И в-третих достаточно иметь ссылку на объект данных чтобы получить эти данные, и совсем не обязательно знать каким образом эти данные изменяюцца - из текущего или из другого потока. Во-первых, вы издеваетесь что-ли? При чем тут интерфейс Runnable? Я же пишу свой класс, его юзающий. Во-вторых, что вы подразумеваете под текущим потоком? В-третьих, вы вообще ап чем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2006, 15:47:13 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
он же JozicВо-первых у Runnable нет метода callme(), а во-вторых вызов метода callme() произойдет в текущем потоке, даже если этот метод - метод объекта Thread (имхо стоит называть вещи своими именами :) ). И в-третих достаточно иметь ссылку на объект данных чтобы получить эти данные, и совсем не обязательно знать каким образом эти данные изменяюцца - из текущего или из другого потока. Во-первых, вы издеваетесь что-ли? При чем тут интерфейс Runnable? Я же пишу свой класс, его юзающий. Во-вторых, что вы подразумеваете под текущим потоком? В-третьих, вы вообще ап чем? Во-первых, не издеваюсь, а просто придолбался :): Код: plaintext 1. 2. Во-вторых: под текущим я понимаю, выполняющийся в данный момент поток. Но имелось в виду то, что в вашем примере вызвался метод объекта Х имплементирующего Раннбл, но не "метод другого потока". Можно ввестись в заблуждение, читая такое :) В-третих, я о том что как уже ранее говорилось: LeonidvДочерний и главный поток, что-то странное (или я?..) Обычными методами синхронизации решается задача, смотреть в сторону задачи "писатель и читатель" - решений должно быть море в интернете. при описанной автором схеме, можно найти более простое решение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2006, 16:20:22 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
Я решил сделать отдельный проект просто для тестирования работы потока..... main класс Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. класс потока Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. и в итоге интересная ситуация..... просто запуская программу получаем в консоли Новое имя потока: Thread[New Thread,5,main] New Thread:завершён нормально Array M1 = 0 0 0 0 0 при запуске через дебагер при просмотре как что и куда пишется получаем.... Новое имя потока: Thread[New Thread,5,main] New Thread:завершён нормально Array M1 = 0 1 2 3 4 в чём здесь ошибка почему я не могу вывести данные при простом запуске ???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2006, 22:52:37 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
В-общем, вы не представляет, что у вас происходит и почему, правда? У вас есть два пути. а) Купить (скачать, открыть имеющуюся) книгу по основам Java (раздел потоки) и прочитать про то, как там всё функционируют. Это хорошо, т.к. вы научитесь и в будущем будете работать, зная... б) Я могу вам привести работающий пример того, как нужно передавать данные. Это плохо, т.к. вы просто схаваете готовое решение и скоро всё забудете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2006, 23:01:24 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
Jozic Но имелось в виду то, что в вашем примере вызвался метод объекта Х имплементирующего Раннбл, но не "метод другого потока". Можно ввестись в заблуждение, читая такое :) Главное - идея :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2006, 23:03:21 |
|
||
|
Как забрать данные из потока
|
|||
|---|---|---|---|
|
#18+
ENigMA2meв чём здесь ошибка почему я не могу вывести данные при простом запуске ???? Скажу лишь, что главная ошибка - ожидание того, что данные немедленно будут доступны сразу после создания объекта new T1("New Thread"). И, кстати, надпись на экране должна быть вида (порядок следования) New name: Thread[New Thread,5,main] Array M1 = 0 0 0 0 0 New Thread:success что логично, а не ENigMA2me Новое имя потока: Thread[New Thread,5,main] New Thread:завершён нормально Array M1 = 0 0 0 0 0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2006, 23:11:14 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34072119&tid=2147742]: |
0ms |
get settings: |
6ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
198ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 483ms |

| 0 / 0 |
