ArduinoJSON:内存分配
您可以使用ArduinoJson库声明两种类型的JSON文档- StaticJsonDocument和DynamicJsonDocument。两者都需要在声明时指定容量(以字节为单位)。
对于静态文档,声明语法是-
StaticJsonDocumentdoc_name;
例如-
StaticJsonDocument<256> myDoc;
对于动态文档,声明语法是-
DynamicJsonDocument doc_name(capacity);
例如,
DynamicJsonDocument myDoc(4096);
两者的区别在于静态doc在栈上分配内存。因此,它不需要调用malloc()andfree(),因此速度更快。
动态文档在堆中分配内存,因此速度稍慢,应该用于较大的JSON,它们不适合堆栈内存。
经验法则是对小于1kB的JSON使用静态文档,对大于1kB的动态文档使用。
您可以在此处阅读有关StaticJsonDocument的更多信息。
并且,更多关于DynamicJsonDocument在这里。
您还可以在此处阅读有关如何确定JsonDocument容量的信息。
热门推荐
10 朋友新年祝福语大全 简短
11 新年祝福语简短大方兔年
12 搬新家礼物祝福语简短
13 同学见面花束祝福语简短
14 五一假期祝福语幽默简短
15 离职欢送敬酒祝福语简短
16 对学弟的祝福语简短
17 考老师辞职祝福语简短
18 祝福语驱散霉运的话简短