Поделиться через


Требования к публикации запроса на работу 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.

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