草庐IT

C++基础

全部标签

HCIA-HarmonyOS设备开发认证V2.0-轻量系统内核基础-消息队列queue

目录一、消息队列基本概念二、消息队列运行机制三、消息队列开发流程四、消息队列使用说明五、消息队列接口六、代码分析(待续...)坚持就有收获一、消息队列基本概念队列又称消息队列,是一种常用于任务间通信的数据结构。队列接收来自任务或中断的不固定长度消息,并根据不同的接口确定传递的消息是否存放在队列空间中。任务能够从队列里面读取消息,当队列中的消息为空时,挂起读取任务;当队列中有新消息时,挂起的读取任务被唤醒并处理新消息。任务也能够往队列里写入消息,当队列已经写满消息时,挂起写入任务;当队列中有空闲消息节点时,挂起的写入任务被唤醒并写入消息。可以通过调整读队列和写队列的超时时间来调整读写接口的阻塞模

HCIA-HarmonyOS设备开发认证V2.0-轻量系统内核基础-信号量semaphore

目录一、信号量基本概念二、信号量运行机制三、信号量开发流程四、信号量接口五、代码分析(待续...)坚持就有收获一、信号量基本概念信号量(Semaphore)是一种实现任务间通信的机制,可以实现任务间同步或共享资源的互斥访问。一个信号量的数据结构中,通常有一个计数值,用于对有效资源数的计数,表示剩下的可被使用的共享资源数,其值的含义分两种情况:0,表示该信号量当前不可获取,因此可能存在正在等待该信号量的任务。正值,表示该信号量当前可被获取。以同步为目的的信号量和以互斥为目的的信号量在使用上有如下不同:用作互斥时,初始信号量计数值不为0,表示可用的共享资源个数。在需要使用共享资源前,先获取信号量,

HCIA-HarmonyOS设备开发认证V2.0-轻量系统内核基础-事件event

目录一、事件基本概念二、事件运行机制三、事件开发流程四、事件使用说明五、事件接口坚持就有收获一、事件基本概念事件是一种实现任务间通信的机制,可用于实现任务间的同步,但事件通信只能是事件类型的通信,无数据传输。一个任务可以等待多个事件的发生:可以是任意一个事件发生时唤醒任务进行事件处理;也可以是几个事件都发生后才唤醒任务进行事件处理。事件集合用32位无符号整型变量来表示,每一位代表一个事件。事件的第25位为保留位,不可以进行位设置。事件(Event)是一种任务间的通信机制,可用于任务间的同步操作。事件的特点是:任务间的事件同步,可以一对多,也可以多对多。一对多表示一个任务可以等待多个事件,多对多

HCIA-HarmonyOS设备开发认证V2.0-3.2.轻量系统内核基础-软件定时器

目录一、软件定时器基本概念二、软件定时器运行机制三、软件定时器状态四、软件定时器模式五、软件定时器开发流程六、软件定时器使用说明七、软件定时器接口八、代码分析(待续...)坚持就有收获一、软件定时器基本概念软件定时器,是基于系统Tick时钟中断且由软件来模拟的定时器,当经过设定的Tick时钟计数值后会触发用户定义的回调函数。定时精度与系统Tick时钟的周期有关。硬件定时器受硬件的限制,数量上不足以满足用户的实际需求,因此为了满足用户需求,提供更多的定时器,OpenHarmonyLiteOS-M内核提供软件定时器功能。软件定时器扩展了定时器的数量,允许创建更多的定时业务。软件定时器功能上支持:静

鸿蒙x昇腾云:华为打造智能时代最佳AI基础设施

本文分享自华为云社区《鸿蒙x昇腾云:华为打造智能时代最佳AI基础设施》,作者:华为云头条。“今天,所有的行业必须拥抱AI,我们必须要有澎湃的AI算力,华为云矢志要将技术扎到根,做AI算力的沃土,推动行业智能应用创新,携手伙伴构建核心技术生态,共同加速千行万业的智能化。”3月15日,在2024年华为云&华为终端云创新峰会上,华为公司常务董事、华为云CEO张平安表示。▲华为公司常务董事、华为云CEO张平安2021年6月3日,张平安首次提出“云云协同”策略,即把基础设施底座华为云和移动应用生态华为终端云服务进行深度协同,为开发者和伙伴提供统一的服务与体验。2024年,随着人工智能爆发式增长,“云云协

实用指南:C#中优雅更新GUI的基础和高级技巧(WinForms和WPF)

 概述:以上内容详细介绍了在C#中如何从另一个线程更新GUI,包括基础功能和高级功能。对于WinForms,使用`Control.Invoke`;对于WPF,使用`Dispatcher.Invoke`。高级功能使用`SynchronizationContext`实现线程间通信,确保清晰、可读性高的代码。在C#中,从另一个线程更新GUI通常需要使用UI线程的同步上下文(SynchronizationContext)或者专门用于在UI线程执行操作的方法(Control.Invoke或Dispatcher.Invoke)。下面分别给出在WinForms和WPF中的基础功能和高级功能的实例源代码。在W

Java基础 --- 面向对象

面向对象面向对象介绍介绍面向:拿、找对象:能干活的东西面向对象编程:拿东西过来坐对应的事情设计对象并使用类和对象类(设计图):是对象共同特征的描述;对象:是真实存在的具体东西在Java中,必须先设计类,才能获得对象。如何定义类publicclass类名{1.成员变量(代表属性,一般是名词)2.成员方法(代表行为,一般是动词)3.构造器(后面学习)4.代码块(后面学习)5.内部类(后面学习)}publicclassPhone{Stringbrand;doubleprint;//行为(方法)publicvoidcall(){}publicvoidplayGame(){}}如何得到类的对象类名对象名

数组基础使用

关于数组①数组定义之后大小不能改变②数组内元素数据类型相通不允许出现不同类型③数组内的元素可以是任何数据类型包括基本数据类型和引用数据类型④数组变量属于引用类型,数组也可以看做是对象,数组的每个元素的相当于这个对象的成员变量⑤数组本身是对象Java中对象是在堆中的因此数组无论是保存原神类型还是其他的对象类型数组对象本身是在堆中的数组声明:int[]num;数据类型+【】+数组名数组定义:num=newint[10];也可以合在一起写int[]num=newint[10];数组使用:遍历数组内的每个元素int[]arr={1,2,3,4,5,6};for(inti=0;i求数组内的元素和int[

C++回调函数精解:基础使用和高级技巧一网打尽

 概述:C++回调函数提供了灵活的编程方式。基础使用演示了如何定义和调用简单的回调,而高级使用则展示了返回值非`void`的回调和Lambda表达式的灵活性。这种机制使程序更模块化、可维护。在C++中,回调函数可以用于实现基础和高级的功能。以下是一个包含基础和高级用法的例子,演示如何定义和使用回调函数。基础使用:#include#include//定义回调函数类型usingBasicCallback=std::function;//基础回调函数voidbasicCallbackFunction(intresult){std::cout高级使用:#include#include//定义高级回调函

【贝加莱PLC基础教学】4.AutiomationStudio界面交互与仿真

  系列文章目录【贝加莱PLC基础教学】0.可变水箱被控对象介绍-CSDN博客【贝加莱PLC基础教学】1.AutiomationStudio软件安装_学不会编程炸糕的博客-CSDN博客【贝加莱PLC基础教学】2.AutiomationStudio软件组态-CSDN博客【贝加莱PLC基础教学】2.5.AutiomationStudio基础编程与仿真_学不会编程炸糕的博客-CSDN博客【贝加莱PLC基础教学】3.AutiomationStudio编程基础-CSDN博客【贝加莱PLC基础教学】4.AutiomationStudio界面交互与仿真-CSDN博客【贝加莱PLC基础教学】Q&A_Simul