|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
03.11.2015, 11:19 | #11 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Ты сам смысл прослушки порта понимаешь? Тебе нужно вызвать некую функцию, которая при запуске ждет когда в порт сокета. При этом ожиданте конечно же заморозит поток, если это блокирующий сокет без проверки на таймаут и т.д. Как тебе поможет в этом случае таймер? тебе бы сначала стоит почитать про сокеты. Блокирующие и неблокирующие. Как они устроены и как с ними работать. Основная схема: Доппоток, в котором в бесконечном цикле вызывается функция прослушки. Если в порт приходят данные функция возвращает сокет, подвязанный к этим данным, и уже из этого сокета ты делаешь считку, пока сокет не опустеет. А дальше опять итерация цикла, которая далее ждет прослушивая. Таймер тут никак не помошник.
I'm learning to live...
|
|
03.11.2015, 14:12 | #12 |
Форумчанин
Регистрация: 12.02.2010
Сообщений: 787
|
Так у меня-то задача сделать такой TCP, чтобы в этой же программе по циклу обрабатывались и мои данные. Вот и вопрос - как сделать программу по циклу? Я почитал, что Вы скинули, понял, что это именно для того, чтобы один поток постоянно поддерживал связь с сервером, а второй поток делал то, что мне надо, это так? Также я смогу сделать и сервер, чтобы один поток постоянно слушал, что идет на IP:PORT, а второй работал с тем же таймером, например. Да?
Ну вот и пробую структуру программы Вам предложить, как я ее понял. А сам пока читаю блокирующие и неблокирующие сокеты Самое-то главное, вроде в теории там ничего сложного, почитал я про все это дело, но я один еще долго двух строчек сложить не смогу Код:
Последний раз редактировалось Stilet; 03.11.2015 в 15:06. |
03.11.2015, 15:09 | #13 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Поток нужен серверу, который будет слушать порт. Ты пишешь клиента или сервер?
I'm learning to live...
|
|
03.11.2015, 15:17 | #14 |
Форумчанин
Регистрация: 12.02.2010
Сообщений: 787
|
И то, и то. Но клиент-то работает, а я вот про это и не понял, что может оптимальнее таймер и с клиента убрать. Тогда не понял, если пишу сервер, то код у меня такой
Где тут что на потоки-то разбивать? Может, я плохо прочитал еще, но что-то не дошло до меня;( |
03.11.2015, 15:17 | #15 |
Форумчанин
Регистрация: 12.02.2010
Сообщений: 787
|
Код:
|
03.11.2015, 17:04 | #16 |
Форумчанин
Регистрация: 12.02.2010
Сообщений: 787
|
А во, я начал делать, и не понял. Есть у меня while(true), ок. А что дальше? У меня сейчас два основных класса: public partial class Form1 : Form и public class AsynchronousSocketListener.
Мне потоки ставить в классе public class AsynchronousSocketListener? Что надо на потоки-то разбивать? |
03.11.2015, 17:24 | #18 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Очисть свой разум юный падаван.
Выкинь весь код нафик и начни с простого: Код:
I'm learning to live...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
запуск программы в консоли | deniscatch | Общие вопросы по Java, Java SE, Kotlin | 2 | 04.08.2014 23:38 |
Перенос с консоли на форму вызвал ряд ошибок / С++ | diha-o | C/C++ Сетевое программирование | 0 | 29.04.2014 23:18 |
перенос курсора в консоли в заданную позицию | Felian | Qt и кроссплатформенное программирование С/С++ | 1 | 18.12.2011 09:32 |
Перенос программы в HTML | romanzi | HTML и CSS | 6 | 08.11.2010 22:01 |
Переписать 3 программы с Delphi консоли na C++ | to-ot | Фриланс | 6 | 22.10.2010 02:38 |