|
0 / 0 / 0
Регистрация: 31.03.2017
Сообщений: 4
|
|
нужно разьяснение по работе с сервером OpenOCD , используя команды write/read06.08.2020, 14:48. Показов 1218. Ответов 2
Метки нет (Все метки)
кто может подсказать по связке server-client (telnet) OpenOCD.
Почему необходимо делать исскуственную задержку между операциями write-read с стороны клиента. Без "задержки" (экспериментально подобрана величина 50мс) не могу получить эхо ранее отосланной команды серверу и данные от его. Все возможные способы опросить сервер на предмет полной готовности к отправке данных не дал НИКАКОГО результата. Все это работает прекрасно если шагать по программе в ручном режиме (программа на С из под Линукса). Уже мозг закипает ((
0
|
|
| 06.08.2020, 14:48 | |
|
Ответы с готовыми решениями:
2
Параллельные процессы read и write в работе с FIFO
|
|
2674 / 1336 / 480
Регистрация: 08.11.2016
Сообщений: 3,693
|
|
| 07.08.2020, 07:13 | |
|
логично: Вы отправили серверу сообщение, он должен его принять и обработать прежде чем дать ответ, а на это требуется какое никакое время. Также логично то, что нет никакого смысла теребить сервер на тему готов он ответить или нет, он ответит когда будет готов. Смотрите в сторону блокирущих сокетов которые будут висеть на recv или recvFrom пока не придет ответ или bytesAvailiable для асинхронного режима.
0
|
|
|
0 / 0 / 0
Регистрация: 31.03.2017
Сообщений: 4
|
|
| 07.08.2020, 14:34 [ТС] | |
|
Механизм понятен в принципе , но из-за отсутствие опыта с сетевым программирование да еще и на С , где все надо прописывать своими ручками, сформировался этот вопросю. Я пробовал использовать recv() вместо read(), менял время в параметре, но устойчивое чтение от сервера так и не получилось - все работало нестабильно и с потерей данных (эхо отосланных команд и полезных данных от сервера). Все это работает на одном компьютере - никаких проводов и WiFi соединений нет.
Я пробовал использовать select() для опроса сервера перед чтением - тоже непонятные глюки. В результате решил попробовать более навороченную poll() и результат совпал с ожиданием! Теперь эта команда стоящая перед задежкой и сразу после - дает четкое представление о состоянии сервера перед считывание своими флагами в структуре и возвращаемым значением! Осталось все это правильно задействовать в программе и удалить задержки. Кстати на более осмысленное понимание процессов общения сервера-клиента дала вот эта фраза: "у сетевых сокетов есть и недостатки. Даже если сокеты используются для обмена данными на одной и той же машине, передаваемые данные должны пройти все уровни сетевого стека, что отрицательно сказывается на быстродействии и нагрузке на систему". Ну и выясние места "затыка" в моем алгоритме тоже сыграло немаловажную роль. До этого я исходил, что процессы чтения-записи между сервером и клиентом идут мгновенно (ввиду мощного процессора и работы на одном компьютере). Но реальность оказалось иной - сетевой обмен всегда неспешен и требует "ухода" и постоянной "заботы" о нем))) когда это все рулиться программой на С.
0
|
|
| 07.08.2020, 14:34 | |
|
Помогаю со студенческими работами здесь
3
read(); write(); read()/write() блокировки Read/write property
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|