← retour aux snippets

resource: limiter CPU/mémoire (Unix)

Fixer des limites de ressources pour un process (ulimit programmatique).

python system #resource#limits#unix

objectif

Fixer des limites de ressources pour un process (ulimit programmatique).

code minimal

import os
if os.name == "posix":
    import resource
    soft, hard = resource.getrlimit(resource.RLIMIT_CPU)
    resource.setrlimit(resource.RLIMIT_CPU, (soft, hard))
    print(True)  # attendu: True
else:
    print(True)

utilisation

import os
if os.name == "posix":
    import resource
    cur, maxv = resource.getrlimit(resource.RLIMIT_AS)
    resource.setrlimit(resource.RLIMIT_AS, (cur, maxv))
    print(True)
else:
    print(True)

variante(s) utile(s)

import os
print(os.name in ("posix","nt"))

notes

  • Disponible seulement sur Unix; utilisez avec prudence (peut tuer le process).
  • RLIMIT_AS (mémoire), RLIMIT_CPU (temps CPU), etc.