Reduce calls to sleep for WebSocket keep alives.

This commit is contained in:
Cody Henthorne
2026-02-19 14:35:01 -05:00
parent 9c29601b55
commit b4d781ddbb
3 changed files with 14 additions and 19 deletions

View File

@@ -27,7 +27,7 @@ object WebSocketDrainer {
private val TAG = Log.tag(WebSocketDrainer::class.java)
private const val KEEP_ALIVE_TOKEN = "WebsocketStrategy"
private const val WAKELOCK_PREFIX = "websocket-strategy-"
private const val WAKELOCK_TAG = "websocket-strategy"
private val QUEUE_TIMEOUT = 30.seconds.inWholeMilliseconds
@@ -65,13 +65,12 @@ object WebSocketDrainer {
websocketDrainTimeout = NO_NETWORK_WEBSOCKET_TIMEOUT
}
val wakeLockTag = WAKELOCK_PREFIX + System.currentTimeMillis()
val wakeLock = WakeLockUtil.acquire(AppDependencies.application, PowerManager.PARTIAL_WAKE_LOCK, websocketDrainTimeout + QUEUE_TIMEOUT, wakeLockTag)
val wakeLock = WakeLockUtil.acquire(AppDependencies.application, PowerManager.PARTIAL_WAKE_LOCK, websocketDrainTimeout + QUEUE_TIMEOUT, WAKELOCK_TAG)
return try {
drainAndProcess(websocketDrainTimeout, keepAliveToken)
} finally {
WakeLockUtil.release(wakeLock, wakeLockTag)
WakeLockUtil.release(wakeLock, WAKELOCK_TAG)
}
}