Deje de destruir el rendimiento de la red cada vez que una aplicación busca redes wifi

Mientras intentaba depurar la mala calidad del chat de video, noté que ciertas aplicaciones causan picos de latencia de ping periódicos incluso cuando hacen ping en mi enrutador.

Rastreé el problema hasta el hecho de que las aplicaciones (por ejemplo, Genymotion, qbittorrent) parecen estar buscando redes wifi cada pocos segundos. (Cuando encendí el registro wifi de depuración, seguí viendo líneas como Info: <airportd[74491]> SCAN request received from pid 76811 (genymotion) with priority 0esa correlacionadas con los picos de latencia).

¿Hay alguna forma de evitar que esto suceda? Básicamente significa que no puedo ejecutar Genymotion y tener una videollamada al mismo tiempo porque tartamudeará cada 10-15 segundos.

¿Intentó monitorear el proceso aeroportuario (su memoria)? ¿Quizás reiniciar la computadora o matar al aeropuerto?
El problema ocurre cada vez que Airportd escanea en busca de nuevas redes: resulta que las aplicaciones de "mal comportamiento" buscaban redes wifi abiertas cada pocos segundos (acabo de editar la pregunta en función de esto). Pero no veo nada útil en el monitor de actividad; El aeropuerto está rondando los 20,6 mb utilizados. El problema persiste también en los reinicios.
Me alegro de que mi intuición sobre airportd fuera correcta :) Busqué un poco en Google y parece que alguien experimentó el mismo problema con qbittorrent . Parece provenir de Qt.
El ticket ya existe en el rastreador de Qt: bugreports.qt.io/browse/…
Encontré news.ycombinator.com/item?id=14816448 . ¿Podría intentar "Establecer la variable de entorno QT_BEARER_POLL_TIMEOUT en -1"? Parece ser un problema bien conocido: la solución para la ventana también se describe aquí , pero el código de este artículo me hace pensar que también funcionará en OSX :)
Wow, eso eludió por completo mis habilidades de Google, ¡gracias! Desafortunadamente, esa solución no funciona al menos para mi instalación de Genymotion. ¿Quizás Genymotion incluye una versión anterior de Qt? Si es así, supongo que probablemente no haya esperanza, excepto que yo los avise para que actualicen o arreglen Qt para solucionar este terrible problema.
Sí, miré el paquete de aplicaciones; está usando 5.4.2.
Bien, el soporte de Genymotion me dio una solución para su paquete de aplicaciones: rm /Applications/Genymotion.app/Contents/{,MacOS/player.app/Contents}/PlugIns/bearer/libq{corewlan,generic}bearer.dylib. @Labo, si publica una respuesta real, ¡le otorgaré la recompensa por rastrearla hasta el error de Qt!
Interesante sobre Genymotion, no pude encontrar su fuente. Gracias, estoy escribiendo una respuesta ahora mismo! Y para que conste, encontré tu pregunta porque un amigo mío me etiquetó en tu publicación de Facebook ;)
Descubrí que los servicios de ubicación también activan escaneos wifi. Preferencias→ Seguridad y privacidad → Servicios de ubicación → Habilitar servicios de ubicación = Desactivado

Respuestas (1)

porque pasa esto

Proviene de la biblioteca GUI Qt que se usa en ambos programas. A varias personas les pasó lo mismo y lo reportan:

Cómo solucionarlo para las versiones más nuevas de Qt

Establezca la variable de entorno QT_BEARER_POLL_TIMEOUTen -1.

QT_BEARER_POLL_TIMEOUT=-1 open -a qbittorrent

El problema también ocurre en Windows, se resuelve de manera similar:

set QT_BEARER_POLL_TIMEOUT=-1
qbittorrent.exe

Referencias:

Cómo resolverlo para Genymotion

Genymotion actualmente usa la versión 5.4.2 de Qt que no es compatible con QT_BEARER_POLL_TIMEOUT.

@Ben Kuhn contactó al soporte y la solución es ejecutar este comando:

rm /Applications/Genymotion.app/Contents/{,MacOS/player.app/Con‌​tents}/PlugIns/beare‌​r/libq{corewlan,gene‌​ric}bearer.dylib