#send-sync #send #sync #wrapper #unsafe

不安全的同步发送

为使结构体成为 Send 和/或 Sync 的不安全包装器

5 个版本

0.1.0 2020 年 11 月 19 日
0.0.3 2020 年 11 月 3 日
0.0.2 2020 年 11 月 3 日
0.0.1 2020 年 11 月 3 日
0.0.0 2020 年 11 月 3 日

#26#send-sync

Download history 95/week @ 2024-03-17 71/week @ 2024-03-24 159/week @ 2024-03-31 121/week @ 2024-04-07 144/week @ 2024-04-14 126/week @ 2024-04-21 14/week @ 2024-04-28 56/week @ 2024-05-05 46/week @ 2024-05-12 54/week @ 2024-05-19 34/week @ 2024-05-26 60/week @ 2024-06-02 13/week @ 2024-06-09 31/week @ 2024-06-16 42/week @ 2024-06-23 2/week @ 2024-06-30

91 每月下载量
用于 2 crates

MIT 许可证

5KB
104

不安全的同步发送

这是一个 Rust 包,基本提供了 3 种包装类型。

  • 不安全的 Send
  • 不安全的 Sync
  • 不安全的 SendSync

它们可以用来强制结构体成为 Send 和/或 Sync,当然这是不安全的。

示例

use std::thread;
use std::rc::Rc;

fn main() {
    let not_send = UnsafeSend::new( Rc::<u32>::new( 1337 ) );
    
    assert!( not_send.strong_count() == 1,
        "We can't really send a reference counted pointer across threads unless it only has one reference." );
    
    thread::spawn(move || {
        println!("We found a number: {}", *not_send);
    });
}

无运行时依赖