Size: a a a

Network neighborhood

2018 May 29

V

V in Network neighborhood
Zerogoki
Это наш. А чем тебе код не угодил?
я могу кинуть тебе версию с моими комментами, но там есть ряд замечаний, начиная от стиля и заканчивая неочевидными решениями. такое впечатление, будто его собирали по кускам из разных источников
источник

Z

Zerogoki in Network neighborhood
Это Корбан там кучу функций наплодил, я его сначала пинал за это, но потом забил
источник

Z

Zerogoki in Network neighborhood
V
я могу кинуть тебе версию с моими комментами, но там есть ряд замечаний, начиная от стиля и заканчивая неочевидными решениями. такое впечатление, будто его собирали по кускам из разных источников
Давай
источник

V

V in Network neighborhood
кстати, если у кого-то есть желание запилить свои парсеры протоколов для Отклика (может вы хотите, чтобы в общий релиз вошли какие-то протоколы, для которых мы не написали парсеры) - я думаю, мы можем это устроить. либо сейчас, либо когда мы выкинем код в публичный репозиторий.
источник

Z

Zerogoki in Network neighborhood
Лично мне больше всего стыдно за тот кусок кода, который большие скрины сливал и чистил от мусора. Это ужасно, но лучше не придумал.
источник

Z

Zerogoki in Network neighborhood
V
кстати, если у кого-то есть желание запилить свои парсеры протоколов для Отклика (может вы хотите, чтобы в общий релиз вошли какие-то протоколы, для которых мы не написали парсеры) - я думаю, мы можем это устроить. либо сейчас, либо когда мы выкинем код в публичный репозиторий.
Могу заняться.
источник

V

V in Network neighborhood
Zerogoki
Могу заняться.
ок, взял тебя на карандаш))
источник

Z

Zerogoki in Network neighborhood
Zerogoki
Лично мне больше всего стыдно за тот кусок кода, который большие скрины сливал и чистил от мусора. Это ужасно, но лучше не придумал.
receive_msg_2 функция
источник

Z

Zerogoki in Network neighborhood
Я, вообще, сейчас переписываю его на Go. Готово процентов 80, но я уперся в проблему с асинхронностью, из-за которой всё зависает. Видимо,  я что-то не так делаю.
источник

Z

Zerogoki in Network neighborhood
Могу потом код скинуть, может подскажешь.
источник

V

V in Network neighborhood
multiprocessing или threading нельзя использовать просто так, от фонаря. есть два класса задач - I/O-bound и CPU-bound (вообще есть ещё memory-bound и cache-bound, но мы их трогать не будем). multiprocessing используется для CPU-bound задач, когда скорость выполнения задачи ограничивается только мощностью процессора. multiprocessing сильно зависит от железа - ведь у всех разное число ядер, кроме того, multiprocessing сильно грузит проц, т.к. использует все его ресурсы, по сути.

для I/O-bound задач, скорость которых ограничивается скоростью работы подсистем ввода-вывода, используется threading. работа с файлами на диске или почти любая работа с сетью - это I/O-bound задачи.
источник

V

V in Network neighborhood
в Python у потоков есть такая штука, как GIL, которая блокирует выполнение других потоков, пока выполняется один, но как раз для задач с ограничением по скорости I/O это не критично
источник

Z

Zerogoki in Network neighborhood
У меня там от большого количества открытых файлов всё зависало. Приходилось ограничивать.
источник

Z

Zerogoki in Network neighborhood
С камер скриншоты сливаются.
источник

Z

Zerogoki in Network neighborhood
Во много потоков скриншлты делаются и пишутся на диск.
источник

V

V in Network neighborhood
ну они пишут скриншоты в файлы. чтобы не висло, нужно использовать пул потоков (либо самодельный, либо multiprocessing.pool.ThreadPool, либо concurrent.futures.ThreadPoolExecutor) с ограничением на максимальное число потоков
источник

Z

Zerogoki in Network neighborhood
Вот так и делал.
источник

Z

Zerogoki in Network neighborhood
Что это за сети?
источник

a

abslimit in Network neighborhood
Zerogoki
Что это за сети?
DN42 и anonet
источник

Z

Zerogoki in Network neighborhood
В первый раз слышу, если честно.
источник