# parsl.monitoring.radios.filesystem.FilesystemRadio

class parsl.monitoring.radios.filesystem.FilesystemRadio

  A MonitoringRadioSender that sends messages over a shared filesystem.

  The messsage directory structure is based on maildir, https://en.wikipedia.org/wiki/Maildir

  The writer creates a message in tmp/ and then when it is fully written, moves it atomically into new/

  The reader ignores tmp/ and only reads and deletes messages from new/

  This avoids a race condition of reading partially written messages.

  This radio is likely to give higher shared filesystem load compared to the UDP radio, but should be much more reliable.

  __init__()

  Methods

  `__init__`() |
  `create_receiver`(*, run_dir, resource_msgs) | Create a receiver for this RadioConfig, and update this RadioConfig with enough context to create senders.
  `create_sender`() | Create a sender to connect to the receiver created by an earlier call to create_receiver.

  create_receiver(*, run_dir: str, resource_msgs: Queue) → MonitoringRadioReceiver

    Create a receiver for this RadioConfig, and update this RadioConfig with enough context to create senders.

  create_sender() → MonitoringRadioSender

    Create a sender to connect to the receiver created by an earlier call to create_receiver.