函数是基于功能或者逻辑进行聚合的可复用的代码块。将一些复杂的、冗长的代码抽离封装成多个代码片段,即函数,有助于提高代码逻辑的可读性和可维护性。不同于Python,由于Golang是编译型语言,编译之后再运行,所以函数的定义顺序无关痛痒。函数声明在Golang里,函数声明语法如下:funcfunction_name(parameter_list)(result_list){//函数逻辑}这里使用function的简写形式func关键词,后面依次接function_name(函数名),parameter_list(参数列表),result_list(返回值列表)以及函数体。parameter_li
1. 回收1.1. 找到不使用的对象1.2. 释放它们的内存1.3. 压缩堆1.4. 合在一起称为回收2. Throughput回收器2.1. 工作细节比较简单2.1.1. 可以在同一个GC周期内完成回收2.1.2. 在单次操作过程中回收新生代或老年代2.2. MinorGC2.2.1. 当Eden空间被填满时,新生代回收就会发生2.2.2. 新生代回收会将所有的对象移出Eden空间2.2.2.1. Eden空间一般是空的2.2.2.2. 不认为它被压缩了2.2.3. 另一些被移到老年代2.2.4. 还有大量对象因不再使用而被丢弃2.3. FullGC2.3.1. 老年代回收会将新生代中的所有
1. 回收1.1. 找到不使用的对象1.2. 释放它们的内存1.3. 压缩堆1.4. 合在一起称为回收2. Throughput回收器2.1. 工作细节比较简单2.1.1. 可以在同一个GC周期内完成回收2.1.2. 在单次操作过程中回收新生代或老年代2.2. MinorGC2.2.1. 当Eden空间被填满时,新生代回收就会发生2.2.2. 新生代回收会将所有的对象移出Eden空间2.2.2.1. Eden空间一般是空的2.2.2.2. 不认为它被压缩了2.2.3. 另一些被移到老年代2.2.4. 还有大量对象因不再使用而被丢弃2.3. FullGC2.3.1. 老年代回收会将新生代中的所有
导读:对于软件测试来说,怎么样才算测够了?如何评价测试的有效性?那么多测试用例,以后怎么删?在软件测试中会遇到非常多的问题,阿里研究员郑子颖分享了18个他总结出的难题以及相关看法,希望对同学们有所启发。十多年前我在上一家公司的时候看到过内部有个网站有一个HardProblemsinTest的列表,上面大概有三四十个问题的样子,是各个部门的测试同学提供的。但可惜后来那个list失传了,我很后悔自己当时没有保存一份。后来很多次我都想要找到那份list,因为上面列的那些问题指出了测试专业在自身专业性上的巨大发展空间。那份list上的问题让当时的我相信,软件测试这件事情本身的难度一点都不亚于软件开
导读:对于软件测试来说,怎么样才算测够了?如何评价测试的有效性?那么多测试用例,以后怎么删?在软件测试中会遇到非常多的问题,阿里研究员郑子颖分享了18个他总结出的难题以及相关看法,希望对同学们有所启发。十多年前我在上一家公司的时候看到过内部有个网站有一个HardProblemsinTest的列表,上面大概有三四十个问题的样子,是各个部门的测试同学提供的。但可惜后来那个list失传了,我很后悔自己当时没有保存一份。后来很多次我都想要找到那份list,因为上面列的那些问题指出了测试专业在自身专业性上的巨大发展空间。那份list上的问题让当时的我相信,软件测试这件事情本身的难度一点都不亚于软件开
本文例子参考《STM32单片机开发实例——基于Proteus虚拟仿真与HAL/LL库》源代码:https://github.com/LanLinnet/STM32F103R6项目要求在SPI总线通信的基础上,使用单片机控制DAC芯片MCP4921以1秒为周期输出正弦波,正弦波的波动范围为0-3.3V。硬件设计在第一节的基础上,在Proteus中添加电路如下图所示。其中我们添加了一个DAC芯片MCP4921。此外,我们还添加了两个虚拟仪表:一个示波器OSCILLOSCOPE和一个SPI总线调试工具SPIDEBUGGER。MCP4921:1)简介:STM32F103R6单片机本身不自带DAC,如果
本文例子参考《STM32单片机开发实例——基于Proteus虚拟仿真与HAL/LL库》源代码:https://github.com/LanLinnet/STM32F103R6项目要求在SPI总线通信的基础上,使用单片机控制DAC芯片MCP4921以1秒为周期输出正弦波,正弦波的波动范围为0-3.3V。硬件设计在第一节的基础上,在Proteus中添加电路如下图所示。其中我们添加了一个DAC芯片MCP4921。此外,我们还添加了两个虚拟仪表:一个示波器OSCILLOSCOPE和一个SPI总线调试工具SPIDEBUGGER。MCP4921:1)简介:STM32F103R6单片机本身不自带DAC,如果
目录DS18B20数字温度计(一)电气特性,寄生供电模式和远距离接线DS18B20数字温度计(二)测温,ROM和CRC算法DS18B20数字温度计(三)1-WIRE总线ROM搜索算法和实际测试DS18B20DS18B20是一个常见的数字温度计芯片,因为测温准确,廉价且接线简单,实际应用广泛,在各种教学实验套装中出镜率也很高.在做FwLib_STC8GPIO示例的时候写了一下DS18B20,这个型号看似简单,但是使用机制比较有意思,一个篇幅写不下,所以把内容抽出来单独介绍.参数1-WireBus总线结构,允许一根总线上挂接多个DS18B20并分别通信在普通温度下,可以直接从数据口取电,这时候只需
目录DS18B20数字温度计(一)电气特性,寄生供电模式和远距离接线DS18B20数字温度计(二)测温,ROM和CRC算法DS18B20数字温度计(三)1-WIRE总线ROM搜索算法和实际测试DS18B20DS18B20是一个常见的数字温度计芯片,因为测温准确,廉价且接线简单,实际应用广泛,在各种教学实验套装中出镜率也很高.在做FwLib_STC8GPIO示例的时候写了一下DS18B20,这个型号看似简单,但是使用机制比较有意思,一个篇幅写不下,所以把内容抽出来单独介绍.参数1-WireBus总线结构,允许一根总线上挂接多个DS18B20并分别通信在普通温度下,可以直接从数据口取电,这时候只需
目录STC8H开发(一):在Keil5中配置和使用FwLib_STC8封装库(图文详解)STC8H开发(二):在LinuxVSCode中配置和使用FwLib_STC8封装库(图文详解)STC8H开发(三):基于FwLib_STC8的模数转换ADC介绍和演示用例说明STC8H开发(四):FwLib_STC8封装库的介绍和使用注意事项STC8H开发(五):SPI驱动nRF24L01无线模块STC8H开发(六):SPI驱动ADXL345三轴加速度检测模块STC8H开发(七):I2C驱动MPU6050三轴加速度+三轴角速度检测模块STC8H开发(八):NRF24L01无线传输音频(对讲机原型)STC8