summaryrefslogtreecommitdiff
path: root/examples/basic-fragile.rs
diff options
context:
space:
mode:
Diffstat (limited to 'examples/basic-fragile.rs')
-rw-r--r--examples/basic-fragile.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/examples/basic-fragile.rs b/examples/basic-fragile.rs
new file mode 100644
index 0000000..54e33fd
--- /dev/null
+++ b/examples/basic-fragile.rs
@@ -0,0 +1,18 @@
+use std::thread;
+
+use fragile::Fragile;
+
+fn main() {
+ // creating and using a fragile object in the same thread works
+ let val = Fragile::new(true);
+ println!("debug print in same thread: {:?}", &val);
+ println!("try_get in same thread: {:?}", val.try_get());
+
+ // once send to another thread it stops working
+ thread::spawn(move || {
+ println!("debug print in other thread: {:?}", &val);
+ println!("try_get in other thread: {:?}", val.try_get());
+ })
+ .join()
+ .unwrap();
+}