C语言实现服务器客户端通信(互发信息)
C语言实现服务器客户端通信(互发信息) 客户端 服务器 net.h net.c server.c 客户端 利用select实现 #include <stdio.h> #include <string.h> #include <stdlib.h> #include <errno.h> #include <unistd.h> #include…
C语言实现服务器客户端通信(互发信息) 客户端 服务器 net.h net.c server.c 客户端 利用select实现 #include <stdio.h> #include <string.h> #include <stdlib.h> #include <errno.h> #include <unistd.h> #include…
开源产品迭代快,但也容易存在隐患。有时会遇到意料之外的问题,需要研究代码解决。内存泄漏是一个很常见的问题,会导致服务不稳定,影响可用性。本文讲述了如何使用MAT和BTrace解决apache kylin内存泄漏问题,重点阐明如何定位问题,分析原因,验证猜想。 希望能抛砖引玉,让大家遇到类似内存泄漏问题时能够有所借鉴。 背景 公司自助报表业务从kylin2.0集群迁移到Kylin3.0集群时,Kyl…
很多的基础类设计会采用泛型模式,有些应用在使用的时候处于隔离考虑,会进行继承,此时子类如何继承泛型类就很讲究了,有些情况下需要类型擦除,有些情况下不需要类型擦除, 但是大多数情况下,我们需要的是保留父类的泛型特性 。因为类型被擦除后,得到的对象会是Object,此时会导致编码或反序列化失败。如下所示: 如果子类也继承父类的泛型化,则类型不会被擦除: 如果子类自己实现泛型化,把父类擦掉,也会丢失类型…
最近想学习使用LaTeX,但第一步的安装就花费了很大精力,LaTeX有各种发行版,网上的各种教程也不尽相同,而且很多是几年前的教程,总之安装过程中也遇到了各种麻烦,在这里记录一下成功的安装过程,以及自己的一些理解。 一、通过apt-get下载安装 1. 选择安装LaTeX发行版 LaTeX有很多发型版,TeX Live就是其中一种。TeX Live 是 TUG (TeX User Group) 维…
maven项目编译时提示“编码GBK或UTF-8的不可映射字符” 原因: 需要在maven的编译插件中声明正确的字符集,保证编译使用的字符集编码与保存代码文件时使用的字符集编码一致。 Windows中文系统默认的字符集是GBK,安装的软件一般会使用操作系统的默认字符集,比如用maven编译项目时,maven默认使用GBK字符集,而代码源文件采用UTF-8字符集,才会出现上图所示的问题,分析了问题出…
cascade(级联) 级联在编写触发器时经常用到,触发器的作用是当 主控表信息改变时,用来保证其关联表中数据同步更新。若对触发器来修改或删除关联表相记录,必须要删除对应的关联表信息,否则,会存有脏数据。所以,适当的做法是,删除主表的同时,关联表的信息也要同时删除,在hibernate中,只需设置cascade属性值即可。 cascade表示级联操作,在hibernate配置注解@OneToOne…
最近因为项目需要,需要在树莓派4b上安装OpenCV, 网上的方法需要用到CMake和OpenCV源代码编辑,装了一上午还没成功。只好重头再来,换种方法,采用下面的方法只需半小时左右即可完成安装。 一、安装最新树莓派系统 1.下载最新的操作系统,我这里用的是2020-08-20-raspios-buster-armhf-full 初始设置中,地区选美国,语言选美式英语,勾选英语和美式键盘。 一、换…
最近在做android手机电池管理相关的项目,其中有一个需求是计算手机充电时间的。翻阅了一些资料和一些相关的竞品,发现每个产品的在手机充电时长的计算上多不是很统一,后来翻阅了物理学的一些知识和文章,总算给出了一个相对比较准确的答案,现在把结论共享给大家。 首先先解释几个概念: 1.电流以及电流的单位 电流被定义为电离子的定向移动,我们称之为电流,其单位为毫安或者安培(MA/A), 1安培=1000…