Spec-Zone.ru › Pony

ProcessMonitor

[Source]

Процессы Fork+exec / создаёт дочерний процесс и контролирует его. Уведомляет клиента о событиях STDOUT/STDERR.

actor tag ProcessMonitor

Конструкторы

create

[Source]

Создаёт инфраструктуру для связи с форкнутым дочерним процессом и регистрации событий asio. Форкует дочерний процесс и уведомляет пользователя о поступающих данных через уведомление.

new tag create(
  auth: (AmbientAuth val | StartProcessAuth val),
  backpressure_auth: (AmbientAuth val | ApplyReleaseBackpressureAuth val),
  notifier: ProcessNotify iso,
  filepath: FilePath val,
  args: Array[String val] val,
  vars: Array[String val] val,
  wdir: (FilePath val | None val) = reference,
  process_poll_interval: U64 val = call)
: ProcessMonitor tag^

Параметры

  • auth: (AmbientAuth val | StartProcessAuth val)
  • backpressure_auth: (AmbientAuth val | ApplyReleaseBackpressureAuth val)
  • notifier: ProcessNotify iso
  • filepath: FilePath val
  • args: Array[String val] val
  • vars: Array[String val] val
  • wdir: (FilePath val | None val) = reference
  • process_poll_interval: U64 val = call

Возвращаемое значение

  • ProcessMonitor tag^

Публичные методы

print

[Source]

Выводит байты и добавляет перевод строки.

be print(
  data: (String val | Array[U8 val] val))

Параметры

  • data: (String val | Array[U8 val] val)

write

[Source]

Запись в STDIN дочернего процесса.

be write(
  data: (String val | Array[U8 val] val))

Параметры

  • data: (String val | Array[U8 val] val)

printv

[Source]

Вывод итерируемой коллекции ByteSeqs.

be printv(
  data: ByteSeqIter val)

Параметры

  • data: ByteSeqIter val

writev

[Source]

Запись итерируемой коллекции ByteSeqs.

be writev(
  data: ByteSeqIter val)

Параметры

  • data: ByteSeqIter val

done_writing

[Source]

Устанавливает флаг _done_writing в true. Если _pending пуст, можно закрыть _stdin pipe.

be done_writing()

dispose

[Source]

Завершение дочернего процесса и закрытие всего.

be dispose()

timer_notify

[Source]

Таймер опроса ввода-вывода Windows сработал.

be timer_notify()

Публичные функции

expect

[Source]

Вызов stdout на уведомлении должен содержать ровно qty байтов. Если qty равно нулю, вызов может содержать любое количество данных.

fun ref expect(
  qty: USize val = 0)
: None val

Параметры

  • qty: USize val = 0

Возвращаемое значение

  • None val

© 2016-2020, The Pony Developers
© 2014-2015, Causality Ltd.
Licensed under the BSD 2-Clause License.
https://stdlib.ponylang.io/process-ProcessMonitor

Spec-Zone.ru

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