
回复
本例程演示如何在小凌派-RK2206开发板上使用OpenHarmony轻量级操作系统进行KvStore(即分布式数据管理)数据读写。
例程:
(1)创建两个线程,一个负责写入KvStore存储,一个负责读取KvStore存储;
(2)每1秒进行1次读写操作;
在本章节中,我们将了解OpenHarmony KvStore存储接口,如文件如何获取数据、设置数据、删除数据和清除缓存。
描述:
从文件系统或缓存中获取与指定键匹配的值。
参数:
名字 | 描述 |
---|---|
key | 键值 |
value | 获取数据 |
len | 数据长度 |
返回值:
返回值 | 描述 |
---|---|
0 | 成功 |
其它 | 见utils/native/lite/include/ohos_errno.h |
描述:
添加或更新与文件系统或缓存中的指定键匹配的值。
参数:
名字 | 描述 |
---|---|
key | 键值 |
value | 写入数据 |
返回值:
返回值 | 描述 |
---|---|
0 | 成功 |
其它 | 见utils/native/lite/include/ohos_errno.h |
描述:
从文件系统或缓存中删除与指定键匹配的值。
参数:
名字 | 描述 |
---|---|
key | 键值 |
描述:
从缓存中清除所有键值对。
返回值:
返回值 | 描述 |
---|---|
0 | 成功 |
其它 | 见utils/native/lite/include/ohos_errno.h |
主要代码分析
在kv_store_example函数中通过LOS_TaskCreate函数创建两个线程:kv_store_write_thread、kv_store_read_thread。
kv_store_write_thread线程负责创建/更新KV存储,每1秒写入一段内容,重复以上流程。
kv_store_read_thread线程负责读取KV存储,每1秒读取一段内容,重复以上流程。
修改 vendor/lockzhiner/rk2206/sample
路径下 BUILD.gn 文件,指定 a10_kv_store
参与编译。
修改 device/rockchip/rk2206/sdk_liteos
路径下 Makefile 文件,添加 -lkv_store_example
参与编译。
示例代码编译烧录代码后,按下开发板的RESET按键,通过串口助手查看日志。