fn reset_thread_local_data(&mut self) -> Result<()> {
        // Best-effort to clean up TLS. If the `Vcpu` was moved to another thread
        // _before_ running this, then there is nothing we can do.
        Self::TLS_VCPU_PTR.with(|cell: &VcpuCell| {
            if let Some(vcpu_ptr) = cell.get() {
                if vcpu_ptr == self as *const Vcpu {
                    Self::TLS_VCPU_PTR.with(|cell: &VcpuCell| cell.take());
                    return Ok(());
                }
            }
            Err(Error::VcpuTlsNotPresent)
        })
    }
/// Deassociates `self` from the current thread.
///
/// Should be called if the current `self` had called `init_thread_local_data()` and
/// now needs to move to a different thread.
///
/// Fails if `self` was not previously associated with the current thread.
Deassociates `self` from the current thread.
Should be called if the current `self` had called `init_thread_local_data()` and
now needs to move to a different thread.

Fails if `self` was not previously associated with the current thread.
Deassociates ` self ` from the current thread . Should be called if the current ` self ` had called ` init_thread_local_data () ` and now needs to move to a different thread . Fails if ` self ` was not previously associated with the current thread .
fn reset_thread_local_data(&mut self) -> Result<()> {
        // Best-effort to clean up TLS. If the `Vcpu` was moved to another thread
        // _before_ running this, then there is nothing we can do.
        Self::TLS_VCPU_PTR.with(|cell: &VcpuCell| {
            if let Some(vcpu_ptr) = cell.get() {
                if vcpu_ptr == self as *const Vcpu {
                    Self::TLS_VCPU_PTR.with(|cell: &VcpuCell| cell.take());
                    return Ok(());
                }
            }
            Err(Error::VcpuTlsNotPresent)
        })
    }
fn reset_thread_local_data ( & mut self ) -> Result < ( ) > { // Best-effort to clean up TLS. If the `Vcpu` was moved to another thread // _before_ running this, then there is nothing we can do. Self :: TLS_VCPU_PTR . with ( | cell : & VcpuCell | { if let Some ( vcpu_ptr ) = cell . get ( ) { if vcpu_ptr == self as * const Vcpu { Self :: TLS_VCPU_PTR . with ( | cell : & VcpuCell | cell . take ( ) ) ; return Ok ( ( ) ) ; } } Err ( Error :: VcpuTlsNotPresent ) } ) }
Deassociates `self` from the current thread.
Deassociates ` self ` from the current thread .
&mut self