当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Rust stdout_locked用法及代码示例


本文简要介绍rust语言中 Function std::io::stdout_locked 的用法。

用法

pub fn stdout_locked() -> StdoutLock<'static>

为当前进程的标准输出构造一个新的锁定句柄。

返回的每个句柄都是一个守卫,授予对共享全局缓冲区的锁定访问权限,该缓冲区的访问通过互斥锁进行同步。如果您需要对锁定进行更明确的控制(例如,在多线程程序中),请使用 io::stdout 函数以及 Stdout::lock 方法来获取未锁定的句柄。

当返回的守卫超出范围时,锁被释放。返回的守卫还实现了用于写入数据的 Write trait。

注意:Windows 可移植性考虑

在控制台中操作时,此流的 Windows 实现不支持非 UTF-8 字节序列。尝试写入无效的 UTF-8 字节将返回错误。

例子

#![feature(stdio_locked)]
use std::io::{self, Write};

fn main() -> io::Result<()> {
    let mut handle = io::stdout_locked();

    handle.write_all(b"hello world")?;

    Ok(())
}

相关用法


注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 Function std::io::stdout_locked。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。