数据库SQLite (2)
SQL update 和 DCL 1 数据类型 常用的数据类型可以完成绝大多数的操作,目前已经接触的类型有: ● 字符串 TEXT 使用一对单引号或双引号表示的一串字符。 ● 整数 INTEGER ● 浮点数 REAL ● 日期(固定格式的TEXT) ​ ○ 如果是当前日期可以使用DATE('now') DATE('now','localtime'…
数据库SQLite(1)
SQL 查询 1 限定查询: // 查询 SELECT job,sal*15 + 200*12 + 200*12 + 300*4 From emp; // 去重查询 // 使用DISTINCT 进行去除重复内容 SELECT DISTINCT job FROM emp; 查询基本工资小于1600的全部雇员信息 SELECT * FROM emp W…
Linux 线程间通信
线程间的通信机制 概念 线程之间是很容易进行通信的,能够通过全局变量实现数据的共享和交换,也就是通过访问临界资源,但是多个线程在同时访问共享数据的对象时需要引入同步和互斥机制。 什么是临界资源? 一次仅允许一个线程访问的资源叫临界资源。 同步机制的概念 同步(synchronization)指的是多个任务(线程)按照约定的顺序相互配合完成一件事情 …
Linux 线程
线程 概念 线程是一个轻量级的进程,为了提高系统的性能引入线程,线程和进程都参与cpu统一的调度 进程和线程的区别(面试题) 共性:都为操作系统提供了并发执行的能力 不同点: 1.调度和资源上:线程是系统调度的最小单位,进程是资源分配的最小单位。 2.地址空间上:同一个进程创建多个线程共享进程资源,进程的地址空间相互独立。 3.通信方面:线程的通信…
Linux 进程间通信
进程间通信 进程间的通信方式有如下7种 传统的通信方式 无名管道 有名管道 信号 system V IPC对象 共享内存 消息队列 信号灯集 BSD 套接字(socket) 无名管道 特点 a. 只能用于具有==亲缘关系==的进程之间的通信 b. 半双工的通信模式 c. 管道可以看成是一种特殊的文件,对于它的读写可以使用文件IO如read、writ…
Linux 进程
进程 进程和程序的区别 程序: 1.编译好的可执行的二进制文件 2.存放在磁盘上,指令和数据的有序集合(文件) 3.静态的,没有任何执行的概念 进程: 1.独立的可调度的任务 2.执行一个程序所分配的资源的总称 3.进程是程序的一次完整的执行过程 4.进程动态的,包括创建,调度,执行和消亡。 进程的特点 1.CPU调度进程时会给进程分配时间片(几毫…
Linux I/O
I/O 输入输出 i:input 输入 o:output 输出 对文件的输入 :输出-》读文件 ​ :输入-》写文件 文件存放在磁盘空间,断电不会丢失文件类型(bcd-lsp) 1.b(Block Device File):块设备文件 2.C(Character Device File):字符设备文件 3.d(Directory): 目录文件 4.…
C语言-C库封装
C库 库的概念 ​ 就是把一些常用函数的目标文件打包在一起,提供相应函数的接口,便于程序员使用;本质上来说库是一种可执行代码的二进制形式 库的分类 静态库和动态库,本质区别是代码被载入时刻不同。 1) 在程序编译时会被连接到目标代码中。 优点: ​ 程序运行时将不再需要该静态库; ​ 运行时无需加载库,运行速度更快 缺点: ​ 静态库中的代码复制到…
LVGL常用函数总结
LVGL 基础对象 对象 基础对象,衍生出其他空间 1 子对象会随着父对象移动 2 子对象超出父对象范围不显示 lv_obj_t * obj = lv_obj_create(lv_scr_act()); 大小 lv_obj_set_size(obj, LV_PCT(40), LV_PCT(20)); 位置 lv_obj_set_x(obj, 200…
MQTT远程协议
从零MQTT远程协议 MQTT 协议 14种报文 报文剩余长度 八进制最高计数256,舍弃最高位时最高计数128 如果数大于128 则最高位置1,保存余数, 并在下一个八进制数保存进了多少位,以此类推 连接报文 10 78 00 04 4D 51 54 54 04 C2 00 78 ProductKey:k1nxjv7zhTE DeviceName…