Spec-Zone.ru › Elisp

Внутреннее устройство процесса

Поля процесса (полный список см. в определении struct Lisp_Process в process.h) включают:

name

Строка Lisp, имя процесса.

command

Список, содержащий аргументы команд, используемые для запуска этого процесса. Для сетевого или последовательного процесса он равен nil, если процесс работает, и t, если процесс остановлен.

filter

Функция Lisp, используемая для приема вывода из процесса.

sentinel

Функция Lisp, вызываемая всякий раз, когда состояние процесса изменяется.

buffer

Связанный буфер процесса.

pid

Целое число, идентификатор процесса операционной системы (ID). Псевдопроцессы, такие как сетевые или последовательные соединения, используют значение 0.

childp

Флаг, t, если это действительно дочерний процесс. Для сетевого или последовательного соединения это список, основанный на аргументах для make-network-process или make-serial-process.

mark

Маркер, указывающий позицию конца последнего вывода из этого процесса, вставленного в буфер. Часто, но не всегда, это конец буфера.

kill_without_query

Если это значение отличное от нуля, завершение Emacs, пока этот процесс все еще работает, не запрашивает подтверждения о завершении процесса.

raw_status

Необработанное состояние процесса, как возвращается системным вызовом wait.

status

Состояние процесса, как должно вернуть process-status. Это символ Lisp, ячейка cons или список.

tick
update_tick

Если эти два поля не равны, необходимо сообщить об изменении состояния процесса, либо запустив страж, либо вставив сообщение в буфер процесса.

pty_flag

Не равно нулю, если общение с подпроцессом использует pty; равно нулю, если используется канал.

infd

Дескриптор файла для ввода из процесса.

outfd

Дескриптор файла для вывода в процесс.

tty_name

Имя терминала, используемого подпроцессом, или nil, если используются каналы.

decode_coding_system

Система кодирования для декодирования ввода из этого процесса.

decoding_buf

Рабочий буфер для декодирования.

decoding_carryover

Размер переноса при декодировании.

encode_coding_system

Система кодирования для кодирования вывода в этот процесс.

encoding_buf

Рабочий буфер для кодирования.

inherit_coding_system_flag

Флаг для установки coding-system буфера процесса из системы кодирования, используемой для декодирования вывода процесса.

type

Символ, указывающий тип процесса: real, network, serial.

Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Process-Internals.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API