Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / вызвать метод по приходу TCP/IP пакета? / 13 сообщений из 13, страница 1 из 1
01.07.2005, 17:52
    #33145816
Кутузов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
Добрый день.
Мне необходимо написать программу которая бы рисовала графики из получаемых по TCP/IP пакетов.
Как написать класс получающий пакеты я понял.
Но как по приходу пакета вызывать метод перерисовывающий график не могу допереть....
может кто подскажет...
Если можно поподробнее и/или с примерами.

И еще вопрос. Не проблема ли что по приходу пакета надо перерисовывать 10 графиков. пакеты приходят с частотой 3 раза в секунду.
...
Рейтинг: 0 / 0
01.07.2005, 18:58
    #33145927
no13
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
КутузовДобрый день.
Мне необходимо написать программу которая бы рисовала графики из получаемых по TCP/IP пакетов. Пакеты у IP. TCP - это "надстройка" над IP для управления передачей данных.
КутузовКак написать класс получающий пакеты я понял.Скорей всего класс, читающий сокет?
КутузовНо как по приходу пакета вызывать метод перерисовывающий график не могу допереть....
может кто подскажет...java не работает на уровне IP-протокола, поэтому практически никак.
...
Рейтинг: 0 / 0
01.07.2005, 19:10
    #33145954
Кутузов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
т.е. делать надо примерно так:
класс читает данные из сокета пихает их в массив
3 раза в секунду по таймеру вызывается метод перерисовки...
так?
...
Рейтинг: 0 / 0
01.07.2005, 19:43
    #33146003
no13
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
Кутузовт.е. делать надо примерно так:
класс читает данные из сокета пихает их в массив
3 раза в секунду по таймеру вызывается метод перерисовки...
так?Так вопрос понятней.
Сделать Timer, которые будет вычитывать данные из "буфера" и рисовать график. Таймера два: в java.util и в java.swing, тебе нужен первый.
...
Рейтинг: 0 / 0
01.07.2005, 19:47
    #33146008
no13
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
Хотя вот тут обходяться и свинговским таймером
http://www.javapractices.com/Topic153.cjp
...
Рейтинг: 0 / 0
01.07.2005, 21:26
    #33146097
Kachalov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
Класс читающий данные из сокета делает это видимо в цикле?
Если да, то в теле цикла и надо вызывать метод перерисовывающий
графики.
Также возможен вариант построения событийно управляемой программы,
с генерацией события при получении данных в поток чтения и создании
обработчика событий, работающего с картинками.
...
Рейтинг: 0 / 0
02.07.2005, 00:34
    #33146190
Кутузов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
это моя первая прога на Java поэтому перед тем как писать решил проконсультироваться.
пока нашел пример который читает из сокета.
Чтение в цикле, насколько я понимаю, это бесконечный цикл который читает из сокета и заталкивает в буфер данные.
А вот как организовать с событиями я не очень понимаю.
Как отловить момент прихода новых данных?
...
Рейтинг: 0 / 0
02.07.2005, 00:36
    #33146191
Кутузов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
В чем разница между java.util и в java.swing и чего мне нужно(лучше) использовать первый?
...
Рейтинг: 0 / 0
02.07.2005, 16:48
    #33146422
Timm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
no13[quot Кутузов]Добрый день.
Мне необходимо написать программу которая бы рисовала графики из получаемых по TCP/IP пакетов. Пакеты у IP. TCP - это "надстройка" над IP для управления передачей данных.
еб****ся?
модель OSI поизучай.
...
Рейтинг: 0 / 0
02.07.2005, 17:14
    #33146442
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
Timm no13[quot Кутузов]Добрый день.
Мне необходимо написать программу которая бы рисовала графики из получаемых по TCP/IP пакетов. Пакеты у IP. TCP - это "надстройка" над IP для управления передачей данных.
еб****ся?
модель OSI поизучай.

У TCP тоже есть пакеты, это полноценный протокол, а не настройка. Пакет TCP, помещается в пакет IP, пакет IP помещается в кадр канального уровня (Ethernet иль TokenRing иль др.).

Как я понимаю, автор топика передает данные для графиков, используя стек протокол TCP/IP, только эти данные он называет пакетами.
...
Рейтинг: 0 / 0
04.07.2005, 16:38
    #33148485
Кутузов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
не могг бы кто-то ответить на мои вопросы?
------------------------------------------------------------------------
это моя первая прога на Java поэтому перед тем как писать решил проконсультироваться.
пока нашел пример который читает из сокета.
Чтение в цикле, насколько я понимаю, это бесконечный цикл который читает из сокета и заталкивает в буфер данные.
А вот как организовать с событиями я не очень понимаю.
Как отловить момент прихода новых данных?
...
Рейтинг: 0 / 0
04.07.2005, 17:27
    #33148626
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
Код: 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.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
 public   class  SocketReceiver  extends  Thread{
//после создания этого класса, нужно не забыть вызвать метод start
//наследуемый от класса Thread
     private  ServerSocket ss;
   
    
    /** Creates a new instance of SocketReceiver */
     public  SocketReceiver() {
         super ("SocketReceiver");
       
        port= somePort;
         try {
            ss= new  ServerSocket(port);
        } catch (Exception e){
            logger.fatal("Can't create socket.",e);
            System.exit(- 1 );
        }
    }
    
     public   void  run(){
         while (true){
             try {
                Socket clientSocket=ss.accept();
                Receiver reisiver= new  Receiver(clientSocket);
                reisiver.start();
            } catch (Exception e){
                logger.fatal("",e);
            }
        }
    }
    
}


 public   class  Receiver  extends  Thread{
    
     private  Logger logger = LogManager.getLogger ( this .getClass ());

     private  Socket sock;
    
    /** Creates a new instance of Reisiver */
     public  Receiver(Socket sock) {
         this .sock = sock
    }
    
     public   void  run(){
       
        logger.debug("Waiting data ...");
         try {
            //this.sock.setSoTimeout(5000);
            PrintWriter out= new  PrintWriter(
                     new  OutputStreamWriter(sock.getOutputStream(),encodingResponse));
            BufferedReader in= new  BufferedReader(
                     new  InputStreamReader(sock.getInputStream(),encodingReceive));
        
           //вот тут собственно мы и оказываемся, когда приходят данные из сокета.
           //далее может быть два варианта, либо ты вызываешь например метод drawGraph, 
           //который рисует крафмки, либо записываешь данные в какой нить общий буфер,
           //но тогда, должен быть запущен еще один поток, который читает через определенное 
           //время буфер и вызывает все тот же метод drawGraph.
            
            logger.debug("Closing connection with coupling module...");
//            in.close();
//            out.close();
//            sock.close();
            logger.debug("Connection closed.");
        } catch (Exception e){
            logger.error(e);
        }
        
    }
    
    
    
   
}

...
Рейтинг: 0 / 0
07.07.2005, 12:47
    #33154311
Кутузов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызвать метод по приходу TCP/IP пакета?
Мне надо получить прочитать 192 байта
что-то не пойму как это сделать... :(
Подскажите пожалуйста
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / вызвать метод по приходу TCP/IP пакета? / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]