Function std::io::stdout_locked[][src]

pub fn stdout_locked() -> StdoutLock<'static>
Notable traits for StdoutLock<'_>
impl Write for StdoutLock<'_>
🔬 This is a nightly-only experimental API. (stdio_locked #86845)
Expand description

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

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

当返回的守卫作用域解除锁定。返回的防护还实现 Write trait 来写入数据。

Note: Windows 可移植性注意事项

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

Examples

#![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(())
}
Run