Здравствуйте, LimyKurn, Вы писали:
LK> ...
LM> Но разве что-то может быть быстрее, чем твоя собственная реализация linkedlist'а
На мой взгляд, в этом нет никакого практического смысла.
Списки "Singly and Doubly Linked Lists" (interlocked list пока не рассматриваем) — это и так C-шные
структуры, где вставка, удаление и т.п. реализовано самым простейшим и естественным образом.
Вот, например, как выглядит вставка:
FORCEINLINE
VOID
PushEntryList(
__inout PSINGLE_LIST_ENTRY ListHead,
__inout __drv_aliasesMem PSINGLE_LIST_ENTRY Entry
)
{
Entry->Next = ListHead->Next;
ListHead->Next = Entry;
}
Уверен, что здесь есть куда оптимизировать?