📦 Поля структуры Command
:
Поле | Назначение |
---|---|
op |
Тип операции: PUT , DELETE , FIND |
key |
Хэш ключа Hash128 |
value |
Буфер под значение (для PUT) |
value_size |
Размер значения в байтах |
response |
Буфер под ответ от сервера (используется при FIND) |
response_size |
Размер ответа в байтах |
response_ready |
Флаг: 0 (ожидание), 1 (ответ готов) |
🔥 Пошаговый обмен:
- Клиент заполняет
Command
структуры (устанавливает поля, сбрасываетresponse_ready = 0
). - Клиент
push_batch()
пачку команд вSharedCommandQueue
. - Сервер
try_pop_batch()
, обрабатывает. - Сервер пишет результат обратно в поля
Command
(response
,response_size
,response_ready=1
). - Клиент ждет готовности (
response_ready.load() == 1
) и читает результат.
Description
Languages
C++
95.7%
CMake
3.2%
C
1.1%