pub fn destroy(
        &mut self,
        device: &ash::Device,
    ) -> VkResult<()> {
        unsafe {
            device.device_wait_idle()?;
        }

        for pool in self.in_flight_pools.drain(..) {
            T::destroy(device, pool.pool)?;
        }

        for pool in self.reset_pools.drain(..) {
            T::destroy(device, pool)?;
        }

        Ok(())
    }
/// Immediately destroy everything. We assume the device is idle and nothing is in flight.
/// Calling this function when the device is not idle could result in a deadlock
Immediately destroy everything. We assume the device is idle and nothing is in flight.
Calling this function when the device is not idle could result in a deadlock
Immediately destroy everything . We assume the device is idle and nothing is in flight . Calling this function when the device is not idle could result in a deadlock
pub fn destroy(
        &mut self,
        device: &ash::Device,
    ) -> VkResult<()> {
        unsafe {
            device.device_wait_idle()?;
        }
        for pool in self.in_flight_pools.drain(..) {
            T::destroy(device, pool.pool)?;
        }
        for pool in self.reset_pools.drain(..) {
            T::destroy(device, pool)?;
        }
        Ok(())
    }
pub fn destroy ( & mut self , device : & ash :: Device , ) -> VkResult < ( ) > { unsafe { device . device_wait_idle ( ) ? ; } for pool in self . in_flight_pools . drain ( .. ) { T :: destroy ( device , pool . pool ) ? ; } for pool in self . reset_pools . drain ( .. ) { T :: destroy ( device , pool ) ? ; } Ok ( ( ) ) }
Immediately destroy everything.
Immediately destroy everything .
&mut self
device
&ash::Device
&mut self
device
&ash::Device