Форум программистов, компьютерный форум, киберфорум
Python: Сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 09.05.2020
Сообщений: 1

Некорректно передаются данные по sockets

09.05.2020, 15:53. Показов 660. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имеются простейшие socket сервер и клиент.

Сервер:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import socket
 
sock = socket.socket()
sock.bind(('169.254.111.46', 1111))
sock.listen(1)
conn, addr = sock.accept()
 
print('connected:', addr)
 
while True:
    data = conn.recv(6)
    print(data)
    data = ' '
    if not data:
        break
    #conn.send(data.upper())
 
conn.close()
Клиент:
Python
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
import time
import threading
import socket
 
lock = threading.RLock()
data = [[1, 0, 0, 0], [2, 0, 0, 0]]
 
sock = socket.socket()
sock.connect(('169.254.111.46', 1111))
 
def setTemp(a):
    while True:
        tfile = open("/sys/bus/w1/devices/28-00000bbfb25a/w1_slave")
        ttext = tfile.read()
        tfile.close()
        temp = ttext.split("\n")[1].split(" ")[9]
        temperature = float(temp[2:]) / 1000
        lock.acquire()
        data[0][1] = str(temperature)
        lock.release()
 
 
def sendSocket(b):
    while True:
        message = str(data[0][1])
        print(message)
        sock.send(message)
 
 
b = 5
a = 6
th1 = threading.Thread(target=setTemp, args=(a,))#глпый вопрос, но как в поток передавать функцию, которая не принимает значения, пришлось костыль в виде левых значений добавить
th2 = threading.Thread(target=sendSocket, args=(b,))
 
th1.start()
th2.start()
th1.join()
th2.join()
Клиент получает значение температуры с датчика на Raspberry Pi, после передает по сокету 6 символьную строку, например, 27.625.
Проблема в том, что сервер принимает ее в значении b'27.625', а после начинает постепенно побайтово сдвигать b'7.6252' b'.62527' и т.д.

Буду благодарен любому комментарию)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.05.2020, 15:53
Ответы с готовыми решениями:

В Debug режиме в VS-2012 данные передаются нормально, но при запуске без дебага возникают ошибки и данные не передаются
Всем доброе время суток. Есть проект, работающий на ASP.NET MVC с использованием Entity Framework. Есть подключаемая база данных, из неё...

Некорректно передаются параметры в поток
Возникла проблема : при создании потоков в 2-х вложенных циклах некорректно передаются параметры в поток; в зависимости от итерации циклов...

CreateProcess() - некорректно передаются параметры командной строки
Пытаюсь открыть файл через CreateProcess(), в параметрах прописал путь к программе которая будет открывать файл и путь к самому файлу. Но...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.05.2020, 15:53
Помогаю со студенческими работами здесь

Не передаются данные
В var data где должно быть значение поле radio servName или OrgName передается undefined, если же делать var data = 'search='+...

Не передаются данные в БД!
Приветствую! Я пока еще зеленый и нуждаюсь в Вашей помощи. При попытке отправить данные в таблицу БД ничего не происходит, в чем...

Данные не верно передаются
в вузе дали задание - написать на html и php типа БД. вроде сделал что-то, но при заполнении столкнулся с проблемой - сохраняется в итоге...

Не передаются данные в сокет
Здравствуйте! Учу c++, пробую написать простенький сервер. проблема в следующем len = recv(Conn.client_sock, buff, BUFF_LEN,0); ...

Не передаются данные $.ajax()
Не получается передать две переменные для обработки их в БД (board_db.php) Оба файла находется в одной папке <script...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru