5 个版本

0.1.5 2022年2月22日
0.1.4 2022年1月3日
0.1.3 2021年12月28日
0.1.1 2021年7月25日
0.1.0 2021年7月25日

#905 in 文件系统

自定义许可证

9KB
175

守护程序 Ctrl

  • 自动重启
  • 通过文件系统请求重启

使用方法

main

use core::time::Duration;
use daemon_ctrl::{ctrl, WatchConfig};

const CTRL_FILE: &str = "a/a/a/a";

fn main() {
    let mut cfg = WatchConfig::new();
    cfg.auto_restart(true);
    cfg.set_ctrl_file(String::from(CTRL_FILE)).unwrap();

    if let Ok(is_parent) = ctrl(cfg) {
        if is_parent {
            println!("into daemon.");
            std::process::exit(0);
        }
    } else {
        println!("not support");
    }

    // your program
}

通过文件系统请求重启

use daemon_ctrl::Control;

const CTRL_FILE: &str = "a/a/a/a";

fn main() {
    let mut ctrl = Control::read(CTRL_FILE);
    println!("now: {:?}", ctrl);
    ctrl.reboot = true;
    ctrl.save(CTRL_FILE);
}

依赖项

~0.8–1.6MB
~36K SLoC