pub unsafe fn commit(&mut self, 
        #[cfg(feature = "check_double_free")]
        check_double_free: &mut HashSet<u64>
    ) {
        #[cfg(any(feature = "use_pspd", feature = "use_vspd"))] {
            self.spd.commit();
        }
        let mut curr = self.pages;
        while let Some(page) = curr.as_option() {
            page.notify();
            curr = page.next;
        }
        let mut curr = self.pages;
        while let Some(page) = curr.as_option() {
            page.commit_data();
            curr = page.next;
        }
        let mut curr = self.pages;
        while let Some(page) = curr.as_option() {
            page.commit_dealloc(
                #[cfg(feature = "check_double_free")]
                check_double_free
            );
            curr = page.next;
        }
        sfence();
        self.set(JOURNAL_COMMITTED);
    }
/// Commits all logs in the journal
Commits all logs in the journal
Commits all logs in the journal
pub unsafe fn commit(&mut self, 
        #[cfg(feature = "check_double_free")]
        check_double_free: &mut HashSet<u64>
    ) {
        #[cfg(any(feature = "use_pspd", feature = "use_vspd"))] {
            self.spd.commit();
        }
        let mut curr = self.pages;
        while let Some(page) = curr.as_option() {
            page.notify();
            curr = page.next;
        }
        let mut curr = self.pages;
        while let Some(page) = curr.as_option() {
            page.commit_data();
            curr = page.next;
        }
        let mut curr = self.pages;
        while let Some(page) = curr.as_option() {
            page.commit_dealloc(
                #[cfg(feature = "check_double_free")]
                check_double_free
            );
            curr = page.next;
        }
        sfence();
        self.set(JOURNAL_COMMITTED);
    }
pub unsafe fn commit ( & mut self , # [ cfg ( feature " " ) ] check_double_free : & mut HashSet < u64 > ) { # [ cfg ( any ( feature " " feature " " ) ) ] { self . spd . commit ( ) ; } let mut curr = self . pages ; while let Some ( page ) = curr . as_option ( ) { page . notify ( ) ; curr = page . next ; } let mut curr = self . pages ; while let Some ( page ) = curr . as_option ( ) { page . commit_data ( ) ; curr = page . next ; } let mut curr = self . pages ; while let Some ( page ) = curr . as_option ( ) { page . commit_dealloc ( # [ cfg ( feature " " ) ] check_double_free ) ; curr = page . next ; } sfence ( ) ; self . set ( JOURNAL_COMMITTED ) ; }
Commits all logs in the journal
Commits all logs in the journal
&mut self
check_double_free
&mut HashSet<u64>