5

голосов
0

ответ
93

Просмотры

Race between socket accept and receive

Я использую nodemcu с ЭЦН-32 и недавно наткнулся на досадную проблему. Я имею в виду этот образец со страницы NodeMCU Github: - простой SRV HTTP сервера = net.createServer (Net.Tcp) SRV: слушать (80, функция (Conn) соппы: на ( "получить", функцию (SCK, полезную нагрузку ) печать (полезная нагрузка) SCK: отправить ( "HTTP / 1.0 200 OK \ г \ nContent-Type: текст / html \ г \ п \ г \ п Здравствуйте, NodeMCU.") конец) сопп: на ( "послал", функция (SCK) SCK: близко () конец) конец) Это не похоже на работу в каждом конкретном случае. Если я пытаюсь его телнет, нет никакой проблемы: $ телнет 172.17.10.59 80 Попытка 172.17.10.59 ... Подключен к 172.17.10.59. Побег символ «^]». GET / HTTP / 1.1 HTTP / 1.0 200 OK Content-Type: текст / html Здравствуйте, NodeMCU. Соединение прервано внешним хостом. Но при использовании Wget, он висит большую часть времени: $ Wget HTTP: //172.17.10. 59 / --2017-05-12 15: 00: 09-- http://172.17.10.59/ Подключение к 172.17.10.59:80 ... связное. Запрос HTTP послан, ожидается ответ ... После некоторых исследований, основная причина, кажется, что получение обратного вызова регистрируется после того, как первые данные были получены от клиента. Этого не происходит при тестировании вручную с телнет, но с клиентом, как Wget или браузер, задержка между подключения и получения первых данных, кажется, слишком мал, чтобы зарегистрировать обработчик получить первый. Я посмотрел в код nodemcu и не похоже, чтобы быть простой способ обойти эту проблему. Или я пропускаю что-то здесь? что получение обратного вызова регистрируется после того, как первые данные были получены от клиента. Этого не происходит при тестировании вручную с телнет, но с клиентом, как Wget или браузер, задержка между подключения и получения первых данных, кажется, слишком мал, чтобы зарегистрировать обработчик получить первый. Я посмотрел в код nodemcu и не похоже, чтобы быть простой способ обойти эту проблему. Или я пропускаю что-то здесь? что получение обратного вызова регистрируется после того, как первые данные были получены от клиента. Этого не происходит при тестировании вручную с телнет, но с клиентом, как Wget или браузер, задержка между подключения и получения первых данных, кажется, слишком мал, чтобы зарегистрировать обработчик получить первый. Я посмотрел в код nodemcu и не похоже, чтобы быть простой способ обойти эту проблему. Или я пропускаю что-то здесь?
Ctx
2

голосов
1

ответ
3.3k

Просмотры

Как удалить шум из изображения в OpenCV Java

Я использую OpenCV в Java Netbeans. У меня есть несколько фотографий с большим количеством noises.Is там любого исходного кода для OpenCV Java, что уменьшает шум Образом?
ctx