gh-71042: Add platform.android_ver (#116674)

This commit is contained in:
Malcolm Smith 2024-03-27 16:53:27 +00:00 committed by GitHub
parent ce00de4c8c
commit 74c8568d07
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 164 additions and 16 deletions

View file

@ -1801,18 +1801,18 @@ def missing_compiler_executable(cmd_names=[]):
return cmd[0]
_is_android_emulator = None
_old_android_emulator = None
def setswitchinterval(interval):
# Setting a very low gil interval on the Android emulator causes python
# to hang (issue #26939).
minimum_interval = 1e-5
minimum_interval = 1e-4 # 100 us
if is_android and interval < minimum_interval:
global _is_android_emulator
if _is_android_emulator is None:
import subprocess
_is_android_emulator = (subprocess.check_output(
['getprop', 'ro.kernel.qemu']).strip() == b'1')
if _is_android_emulator:
global _old_android_emulator
if _old_android_emulator is None:
import platform
av = platform.android_ver()
_old_android_emulator = av.is_emulator and av.api_level < 24
if _old_android_emulator:
interval = minimum_interval
return sys.setswitchinterval(interval)