中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

qemu 隊列的實現原理是什么

發布時間:2021-06-21 18:40:22 來源:億速云 閱讀:328 作者:Leah 欄目:云計算

今天就跟大家聊聊有關qemu 隊列的實現原理是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

#define QLIST_HEAD(name, type)                                          \

struct name {                                                           \

        struct type *lh_first;  /* first element */                     \

}


#define QLIST_HEAD_INITIALIZER(head)                                    \

        { NULL }


#define QLIST_ENTRY(type)                                               \

struct {                                                                \

        struct type *le_next;   /* next element */                      \

        struct type **le_prev;  /* address of previous next element */  \

}


/*

 * List functions.

 */

#define QLIST_INIT(head) do {                                           \

        (head)->lh_first = NULL;                                        \

} while (/*CONSTCOND*/0)


#define QLIST_INSERT_AFTER(listelm, elm, field) do {                    \

        if (((elm)->field.le_next = (listelm)->field.le_next) != NULL)  \

                (listelm)->field.le_next->field.le_prev =               \

                    &(elm)->field.le_next;                              \

        (listelm)->field.le_next = (elm);                               \

        (elm)->field.le_prev = &(listelm)->field.le_next;               \

} while (/*CONSTCOND*/0)


#define QLIST_INSERT_BEFORE(listelm, elm, field) do {                   \

        (elm)->field.le_prev = (listelm)->field.le_prev;                \

        (elm)->field.le_next = (listelm);                               \

        *(listelm)->field.le_prev = (elm);                              \

        (listelm)->field.le_prev = &(elm)->field.le_next;               \

} while (/*CONSTCOND*/0)


#define QLIST_INSERT_HEAD(head, elm, field) do {                        \

        if (((elm)->field.le_next = (head)->lh_first) != NULL)          \

                (head)->lh_first->field.le_prev = &(elm)->field.le_next;\

        (head)->lh_first = (elm);                                       \

        (elm)->field.le_prev = &(head)->lh_first;                       \

} while (/*CONSTCOND*/0)


qemu 隊列的實現原理是什么

node->next  就是指向下一個節點,

node->prev就是指向上一個節點的entry,所以*(node->prev)就是上一個節點的next域的地址了

也就是說( *node->prev ) ->next ==node


看完上述內容,你們對qemu 隊列的實現原理是什么有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

梧州市| 古丈县| 米泉市| 两当县| 纳雍县| 新沂市| 合山市| 武清区| 闽侯县| 钟山县| 南华县| 扎鲁特旗| 醴陵市| 云龙县| 布尔津县| 新河县| 庐江县| 新野县| 开封市| 桐城市| 额尔古纳市| 昌邑市| 中超| 宾阳县| 新乡市| 佛教| 定安县| 河南省| 拉萨市| 海丰县| 河北区| 从化市| 洛浦县| 方城县| 延安市| 普兰店市| 中山市| 隆子县| 鄂伦春自治旗| 黎城县| 铁岭市|