Требования к публикации запросов на работу NDKPI

Правила публикации рабочих запросов для потребителя

Потребитель NDK будет публиковать в очереди инициатора следующие типы рабочих запросов:

Потребитель будет публиковать запросы NdkReceive (NDK_FN_RECEIVE) в очереди получения.

Потребитель будет отправлять все эти запросы в одну и ту же отдельную очередь на NDK_QP или NDK_SRQ сериализованным образом. Иными словами, потребитель никогда не будет иметь два одновременных вызова каких-либо функций запроса на работу в одной и той же отдельной очереди, принадлежащей NDK_QP или NDK_SRQ.

Это означает, например, что параллельные вызовы NdkReceive не будут выдаваться, параллельные вызовы NdkSend и NdkWrite не будут выдаваться, но параллельные вызовы NdkReceive и NdkWrite могут быть выданы на одном NDK_QP.

Правила публикации рабочих запросов для поставщика

Поставщик не должен иметь избыточных блокировок в указанных выше функциях запроса на работу, так как они гарантированно будут сериализованы потребителем.

Поставщик должен иметь возможность обрабатывать вызовы NdkFlush (NDK_FN_FLUSH), которые могут быть вызваны одновременно с вызовом рабочего запроса на том же NDK_QP.

Поставщик должен иметь возможность обрабатывать вызов NdkCloseConnectorобъекте-последователе NDK_CONNECTOR для NDK_QP), который может вызываться одновременно с вызовом рабочего запроса на том же NDK_QP.

Сетевой интерфейс поставщика ядра (NDKPI)