2025年7月14日
摘要: 本文主要阐述IoT平台的终端接入、控制逻辑及物模型、设备影子等IoT常见概念和技术。 1.网络拓扑及软件架构 1.1.APP远程控制IoT设备终端的网络拓扑 1.2.设备端平台业务 2.常见概念 2.1.IoT云概念 我们这里实现的云后台分为两类:基础云与业务云,二者架构完全独立。其中,基础云用于全 阅读全文
posted @ 2025-07-14 16:05 Clapton 阅读(101) 评论(0) 推荐(0)
  2021年11月18日
摘要: C语言中定义变长数组的方法就是在结构体尾部定义一个长度为0的数组,意义是为了快速地索引到结构体尾部,所以当你的结构体指向的内存大小大于结构体大小时,多出来的那部分内存就可以全部当作该数组的空间。 此外,这种长度为0的数组不会占用结构体空间,所以使用‘sizeof'函数获取结构体大小是不会体现该数组的 阅读全文
posted @ 2021-11-18 18:05 Clapton 阅读(846) 评论(0) 推荐(0)
  2021年10月29日
摘要: 1.经典例子 2.优先级继承 低优先级的A线程获得互斥锁前,需要先将自己的优先级临时提高,最后处理完后再退回原优先级。 set_priority(20); pthread_mutex_lock(); …. pthread mutex unlock(); set_priority(10); 这样在T3 阅读全文
posted @ 2021-10-29 20:15 Clapton 阅读(163) 评论(0) 推荐(0)
  2021年10月28日
摘要: 1.gettid 和 pthread_self 的区别 pthread_self()是POSIX的实现,它的返回值是pthread_t,pthread_t在linux中实际是无符号长整型,即unsigned long。gettid是系统调用,它的返回值是pid_t,在linux上是一个无符号整型。p 阅读全文
posted @ 2021-10-28 12:14 Clapton 阅读(391) 评论(0) 推荐(0)
  2021年10月18日
摘要: 以下代码报错:No matching function call to 'pthread_create' 1 #include <pthread.h> 2 3 void *draw(void *pt) { 4 // ... 5 } 6 7 void *input(void *pt) { 8 // . 阅读全文
posted @ 2021-10-18 20:35 Clapton 阅读(605) 评论(0) 推荐(0)
  2021年10月13日
摘要: 1.C与C++文件混用 如果我们的开发的代码用的是C++语言,但是有些第三方库或者代码,用的是C语言编写编译,在应用C语言的库的时候,就要加上extern "C",告诉C++的编译器按照C语言的符号修饰规则去找这些符号。 阅读全文
posted @ 2021-10-13 14:54 Clapton 阅读(72) 评论(0) 推荐(0)
  2021年9月30日
摘要: 在能够使用socket长连接的应用中,建议使用socket技术,毕竟很通用熟悉的人也多,而消息队列能够提高的效率有限;在只能使用socket短连接的应用中,特别是并发量大的场景,强烈建议使用消息队列,因为能够极大的提高通信速率。 阅读全文
posted @ 2021-09-30 15:19 Clapton 阅读(1249) 评论(0) 推荐(0)
  2021年6月24日
摘要: 简单的说,微服务是架构设计方式,分布式是系统部署方式,两者概念不同markmark微服务是啥? 这里不引用书本上的复杂概论了,简单来说微服务就是很小的服务,小到一个服务只对应一个单一的功能,只做一件事。这个服务可以单独部署运行,服务之间可以通过RPC来相互交互,每个微服务都是由独立的小团队开发,测试 阅读全文
posted @ 2021-06-24 16:07 Clapton 阅读(260) 评论(0) 推荐(0)
  2021年6月22日
摘要: 成员函数:无论静态函数还是非静态函数,都是属于类的(这一点与数据成员的静态非静态不同),对象并不拥有函数的拷贝.两者的区别在于:非静态的函数由类对象(加.或指针加->;)调用,这时将向函数传递this指针.而静态函数由类名(::)(或对象名.)调用,但静态函数不传递this指针,不识别对象个体,所以 阅读全文
posted @ 2021-06-22 20:01 Clapton 阅读(837) 评论(0) 推荐(0)
  2021年6月21日
摘要: 1 阅读全文
posted @ 2021-06-21 21:48 Clapton 阅读(20) 评论(0) 推荐(0)