Linux
汽车网络那些事儿
(1)汽车网络(CAN/CAN FD、FlexRay、Ethernet)相关的深度剖析,干货分享;
(2)Vector工具链的灵活妙用;
(3)车联网(V2X/Car2X)的前沿探索。
展开
-
Linux多线程编程
本章将分为两大部分进行讲解,前半部分将引出线程的使用场景及基本概念,通过示例代码来说明一个线程创建到退出到回收的基本流程。后半部分则会通过示例代码来说明如果控制好线程,从临界资源访问与线程的执行顺序控制上引出互斥锁、信号量的概念与使用方法。1 线程的使用1.1 为什么要使用多线程在编写代码时,是否会遇到以下的场景会感觉到难以下手?场景一:写程序在拷贝文件时,需要一边去拷贝文件,一边去向用户展示拷贝文件的进度时,传统做法是通过每次拷贝完成结束后去更新变量,再将变量转化为进度显示出来。其中经历了拷贝-&原创 2020-10-20 16:20:13 · 236 阅读 · 0 评论 -
Linux C/C++编程——常用关键字pragma pack和attribute_packed总结
(一)pragma pack使用说明用sizeof运算符求算某结构体所占空间时,并不是简单地将结构体中所有元素各自占的空间相加,这里涉及到内存字节对齐的问题,有时候为了内存对齐需要补齐空字节。通常写程序的时候,不需要考虑对齐问题。编译器会替我们选择适合目标平台的对齐策略。当然,我们也可以通知给编译器传递预编译指令而改变对指定数据的对齐方法。语法:#pragma pack( [show] | [push | pop] [, identifier], n )#pragma pack() 能够取消自定义的对原创 2020-09-21 10:05:34 · 1845 阅读 · 0 评论