xrtImapAppendConfigInit

初始化同步策略为 AUTO,其余字段为空。

void xrtImapAppendConfigInit(ximapappendconfig* pConfig);
参数说明
ximapappendconfig* pConfig配置结构
返回:初始化同步策略为 AUTO,其余字段为空。

示例已编译验证

imapappendconfiginit obj;
xrtImapAppendConfigInit(&obj);

xrtImapAppendResultInit

初始化无 APPENDUID 的空结果。

void xrtImapAppendResultInit(ximapappendresult* pResult);
参数说明
ximapappendresult* pResult出:结果
返回:初始化无 APPENDUID 的空结果。

示例已编译验证

imapappendresultinit obj;
xrtImapAppendResultInit(&obj, pResult);

xrtImapClientAppendBegin

XRT_API bool xrtImapClientAppendBegin( ximapclient* pClient, const ximapappendconfig* pConfig, xdeadline iDeadline, xcancel* pCancel );

;
返回:XRT_API bool xrtImapClientAppendBegin( ximapclient* pClient, const ximapappendconfig* pConfig, xdeadline iDeadline, xcancel* pCancel );

示例已编译验证

/* XRT_API bool xrtImapClientAppendBegin( ximapclient* pClient, const ximapappendconfig* pConfig, xdeadline iDeadline, xcancel* pCancel ); */
result = xrtImapClientAppendBegin();

xrtImapClientAppendRemaining

返回活动 APPEND literal 尚未写入的字节数。

size_t xrtImapClientAppendRemaining(const ximapclient* pClient);
参数说明
const ximapclient* pClient客户端对象
返回:返回活动 APPEND literal 尚未写入的字节数。

示例已编译验证

/* 返回活动 APPEND literal 尚未写入的字节数。 */
result = xrtImapClientAppendRemaining(pClient);

xrtImapClientAppendWrite

零复制发送下一块 literal;超过声明长度时不发送任何字节。

bool xrtImapClientAppendWrite( ximapclient* pClient, const void* pData, size_t iSize, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
const void* pData用户数据
size_t iSize字节数
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:零复制发送下一块 literal;超过声明长度时不发送任何字节。

示例已编译验证

/* 零复制发送下一块 literal;超过声明长度时不发送任何字节。 */
result = xrtImapClientAppendWrite(pClient, pData, iSize, iDeadline, pCancel);

xrtImapClientAppendEnd

结束 literal,消费命令响应并解析可选 APPENDUID。

bool xrtImapClientAppendEnd( ximapclient* pClient, ximapappendresult* pResult, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
ximapappendresult* pResult出:结果
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:结束 literal,消费命令响应并解析可选 APPENDUID。

示例已编译验证

/* 结束 literal,消费命令响应并解析可选 APPENDUID。 */
result = xrtImapClientAppendEnd(pClient, pResult, iDeadline, pCancel);

xrtImapClientAppend

对已经完整驻留内存的消息执行一次 APPEND。

bool xrtImapClientAppend( ximapclient* pClient, const ximapappendconfig* pConfig, const void* pData, ximapappendresult* pResult, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
const ximapappendconfig* pConfig配置结构
const void* pData用户数据
ximapappendresult* pResult出:结果
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:对已经完整驻留内存的消息执行一次 APPEND。

示例已编译验证

/* 对已经完整驻留内存的消息执行一次 APPEND。 */
result = xrtImapClientAppend(pClient, pConfig, pData, pResult, iDeadline, pCancel);