| Crates.io | arcmut |
| lib.rs | arcmut |
| version | 0.1.0 |
| created_at | 2024-01-10 15:10:09.374083+00 |
| updated_at | 2024-01-10 15:10:09.374083+00 |
| description | Introduce ArcMut, utility for FFI. |
| homepage | https://github.com/al8n/arcmut |
| repository | https://github.com/al8n/arcmut |
| max_upload_size | |
| id | 1095292 |
| size | 53,376 |
ArcMut is a reference-counted pointer to a value of type T, which can be mutated.
Note: This struct is not thread-safe!!!
In normal Rust code, you are not expected to use this type, but when you
are writing FFI code, you may need to use this type to share a value between
Rust and other languages, and again, if the code in other languages is concurrent,
you are encouraged to use a Arc<Mutex<T>> instead.
ArcMut<T> provides shared ownership of a value of type T, allocated
in the heap. Invoking clone on ArcMut produces another pointer to the
same allocation in the heap. When the last ArcMut pointer to a given
allocation is destroyed, the value stored in that allocation (often
referred to as "inner value") is also dropped.
This is similar to std::sync::Arc, but it allows interior mutability.
[dependencies]
arcmut = "0.1"
arcmut is under the terms of both the MIT license and the
Apache License (Version 2.0).
See LICENSE-APACHE, LICENSE-MIT for details.
Copyright (c) 2024 Al Liu.