Python 3.13+Linux · macOSosfunction
os.unlockpt
os — pseudo-terminals (pty)
Unlock the slave pseudo-terminal for opening. Availability: Unix.
Syntax
os.unlockpt(...)
Without this call the slave device cannot be opened — the attempt fails. It prevents anyone from opening the slave before the master side has set it up. The order is posix_openpt, grantpt, unlockpt, ptsname.
Examples
import os
master = os.posix_openpt(os.O_RDWR) # → ? только Unix: master-дескриптор, slave пока заблокирован
os.unlockpt(master) # → ? только Unix: ничего не возвращает; os.openpty() делает этот шаг сам
slave = os.open(os.ptsname(master), os.O_RDWR) # → ? только Unix: теперь slave-конец открывается штатно
m2 = os.posix_openpt(os.O_RDWR) # → ? только Unix: вторая пара, unlockpt намеренно не вызываем
os.open(os.ptsname(m2), os.O_RDWR) # → ? только Unix: OSError (EIO) — без unlockpt slave открыть нельзя
See also
Common errors
Open in the full glossarydocs.python.orgReport an inaccuracy