Trait browser_window::prelude::v1::Send

1.0.0 · source ·
pub unsafe auto trait Send { }
Expand description

Types that can be transferred across thread boundaries.

This trait is automatically implemented when the compiler determines it’s appropriate.

An example of a non-Send type is the reference-counting pointer rc::Rc. If two threads attempt to clone Rcs that point to the same reference-counted value, they might try to update the reference count at the same time, which is undefined behavior because Rc doesn’t use atomic operations. Its cousin sync::Arc does use atomic operations (incurring some overhead) and thus is Send.

See the Nomicon and the Sync trait for more details.

Implementors§

source§

impl !Send for LocalWaker

1.26.0 · source§

impl !Send for Args

1.26.0 · source§

impl !Send for ArgsOs

source§

impl Send for ApplicationHandleThreaded

1.6.0 · source§

impl Send for alloc::string::Drain<'_>

1.36.0 · source§

impl Send for Waker

1.44.0 · source§

impl<'a> Send for IoSlice<'a>

1.44.0 · source§

impl<'a> Send for IoSliceMut<'a>

source§

impl<'a, O, H, R> Send for DelegateFuture<'a, O, H, R>
where R: Send,

§Safety

DelegateFuture by itself is not send. This is because we keep a handle H, which is not necessarily Send. However, because the closure only executes on the GUI thread, and because the handle is only provided to the closure that will be executed on the GUI thread, this should be fine.

source§

impl<'a, R> Send for DelegateFutureFuture<'a, R>
where R: Send,

§Safety

DelegateFutureFuture by itself is not send. This is because of ApplicationHandle. However, because the closure only executes on the GUI thread, and because this handle that is provided to the closure is something that will only be sent with the closure to the GUI thread, this should be fine.

source§

impl<Dyn> Send for DynMetadata<Dyn>
where Dyn: ?Sized,

source§

impl<T> !Send for *const T
where T: ?Sized,

source§

impl<T> !Send for *mut T
where T: ?Sized,

1.25.0 · source§

impl<T> !Send for NonNull<T>
where T: ?Sized,

NonNull pointers are not Send because the data they reference may be aliased.

source§

impl<T> !Send for MappedMutexGuard<'_, T>
where T: ?Sized,

source§

impl<T> !Send for MutexGuard<'_, T>
where T: ?Sized,

source§

impl<T> !Send for ReentrantLockGuard<'_, T>
where T: ?Sized,

source§

impl<T> !Send for MappedRwLockReadGuard<'_, T>
where T: ?Sized,

source§

impl<T> !Send for MappedRwLockWriteGuard<'_, T>
where T: ?Sized,

source§

impl<T> !Send for RwLockReadGuard<'_, T>
where T: ?Sized,

source§

impl<T> !Send for RwLockWriteGuard<'_, T>
where T: ?Sized,

source§

impl<T> Send for &T
where T: Sync + ?Sized,

source§

impl<T> Send for ThinBox<T>
where T: Send + ?Sized,

ThinBox<T> is Send if T is Send because the data is owned.

source§

impl<T> Send for alloc::collections::linked_list::Iter<'_, T>
where T: Sync,

source§

impl<T> Send for alloc::collections::linked_list::IterMut<'_, T>
where T: Send,

source§

impl<T> Send for Cell<T>
where T: Send + ?Sized,

source§

impl<T> Send for RefCell<T>
where T: Send + ?Sized,

1.31.0 · source§

impl<T> Send for ChunksExactMut<'_, T>
where T: Send,

source§

impl<T> Send for ChunksMut<'_, T>
where T: Send,

source§

impl<T> Send for core::slice::iter::Iter<'_, T>
where T: Sync,

source§

impl<T> Send for core::slice::iter::IterMut<'_, T>
where T: Send,

1.31.0 · source§

impl<T> Send for RChunksExactMut<'_, T>
where T: Send,

1.31.0 · source§

impl<T> Send for RChunksMut<'_, T>
where T: Send,

source§

impl<T> Send for AtomicPtr<T>

source§

impl<T> Send for Receiver<T>
where T: Send,

source§

impl<T> Send for Sender<T>
where T: Send,

source§

impl<T> Send for SyncSender<T>
where T: Send,

source§

impl<T> Send for Mutex<T>
where T: Send + ?Sized,

1.70.0 · source§

impl<T> Send for OnceLock<T>
where T: Send,

source§

impl<T> Send for ReentrantLock<T>
where T: Send + ?Sized,

source§

impl<T> Send for RwLock<T>
where T: Send + ?Sized,

1.29.0 · source§

impl<T> Send for JoinHandle<T>

source§

impl<T> Send for UnsafeSend<T>

source§

impl<T> Send for UnsafeSendSync<T>

source§

impl<T, A> !Send for Rc<T, A>
where A: Allocator, T: ?Sized,

1.4.0 · source§

impl<T, A> !Send for alloc::rc::Weak<T, A>
where A: Allocator, T: ?Sized,

source§

impl<T, A> Send for Cursor<'_, T, A>
where T: Sync, A: Allocator + Sync,

source§

impl<T, A> Send for CursorMut<'_, T, A>
where T: Send, A: Allocator + Send,

source§

impl<T, A> Send for LinkedList<T, A>
where T: Send, A: Allocator + Send,

1.6.0 · source§

impl<T, A> Send for alloc::collections::vec_deque::drain::Drain<'_, T, A>
where T: Send, A: Allocator + Send,

source§

impl<T, A> Send for Arc<T, A>
where T: Sync + Send + ?Sized, A: Allocator + Send,

1.4.0 · source§

impl<T, A> Send for alloc::sync::Weak<T, A>
where T: Sync + Send + ?Sized, A: Allocator + Send,

1.6.0 · source§

impl<T, A> Send for alloc::vec::drain::Drain<'_, T, A>
where T: Send, A: Send + Allocator,

source§

impl<T, A> Send for IntoIter<T, A>
where T: Send, A: Allocator + Send,

Auto implementors§

§

impl !Send for Application

§

impl !Send for ApplicationHandle

§

impl !Send for Runtime

§

impl !Send for AddressChangedEvent

§

impl !Send for AuthCredentialsEvent

§

impl !Send for BrowserWindow

§

impl !Send for BrowserWindowHandle

§

impl !Send for BrowserWindowOwner

§

impl !Send for BrowserWindowThreaded

§

impl !Send for CertificateErrorEvent

§

impl !Send for ConsoleMessageEvent

§

impl !Send for DownloadProgressEvent

§

impl !Send for DownloadStartedEvent

§

impl !Send for FaviconChangedEvent

§

impl !Send for FileDialogEvent

§

impl !Send for FullscreenModeChangedEvent

§

impl !Send for KeyPressEvent

§

impl !Send for KeyPressedEvent

§

impl !Send for LoadingProgressChangedEvent

§

impl !Send for MessageEvent

§

impl !Send for NavigationEndEvent

§

impl !Send for NavigationStartEvent

§

impl !Send for PageTitleChangedEvent

§

impl !Send for ScrollOffsetChangedEvent

§

impl !Send for SelectClientCertificateEvent

§

impl !Send for StartDraggingEvent

§

impl !Send for StatusMessageEvent

§

impl !Send for TextSelectionChangedEvent

§

impl !Send for TooltipEvent

§

impl !Send for CookieJar

§

impl !Send for Error

§

impl !Send for WindowHandle

§

impl !Send for ApplicationImpl

§

impl !Send for BrowserWindowImpl

§

impl !Send for CookieImpl

§

impl !Send for CookieIteratorImpl

§

impl !Send for CookieJarImpl

§

impl !Send for CookieMutImpl

§

impl !Send for WindowImpl

§

impl Send for Source

§

impl Send for JsValue

§

impl Send for CookieStorageError

§

impl Send for DelegateError

§

impl Send for ApplicationSettings

§

impl Send for BrowserWindowBuilder

§

impl Send for MessageEventArgs

§

impl Send for BigFloat

§

impl Send for WindowBuilder

§

impl<'a> !Send for CookieIterator<'a>

§

impl<H, O, A> Send for EventHandler<H, O, A>

§

impl<T> Send for Option<T>
where T: Send,

§

impl<T, E> Send for Result<T, E>
where E: Send, T: Send,