移动开发
揭秘 MySQL 数据类型:深入理解每种类型的使用与区别
文章目录
数值类型
tinyint类型
bit类型
小数类型
float(小数)
decimal
字符串类型
char
varchar
char和varchar比较
日期和时间类型
enum和set
MySQL当中数据类型的分类
数值类型
tinyint类型数值越界测试: mysql> c
swift Equatable
我来了,swift
定义
用于做值类型对比的协议。
适用范围
遵循Equatable的类型都可以使用==或是!=符号对比判断。这个类型包括struct/class/enum
实现原理
任何遵循Equatable的类型,都需要实现方法static func ==(lhs: Self, rhs: Self) -> Bool在这个方法内按照指定的值和值间对比关系返回true或是false,外部
如何设计一个可靠传输协议?
1.0——设计一个理想化的可靠传输协议
topdown理解计算机网络这本书从1.0升级到3.0带我们走进可靠协议的设计思路,不可靠的本质是loss&&bit error,假定没有这种bad case,作者带领我们设计一种完美可靠传输协议,版本1.0。
发送端【rdt_send】可靠传输提供给应用层的发送数据接口,经过可靠传输协议处理之后,交给【udt_send】不可靠
Android卡顿监控
实现思路
卡顿监控主要监控:慢方法的监控、ANR的监控、掉帧的监控。其实现方案主要有三种:
Looper的Printer在消息执行前后的打印,计算出消息执行时间。
利用Choreographer向其注册CALL_BACK, 监听Vsync的开始从而得到上一帧的执行时间。
利用插桩的方法计算每个方法的执行时间。
比如对慢方法、ANR的监控,则是对主线程的Looper的消息的监听,对掉
object.defineProperty()实现双向数据绑定
Object.defineProperty()方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性(属性为响应式属性),并返回此对象。
语法:
Object.defineProperty(obj, prop, descriptor)
obj要定义属性的对象。
prop要定义或修改的属性的名称或 descriptor要定义或修改的属性描述符。
get:
属性的 getter 函数
APP启动更快iOS15
之前可以通过设置DYLD_PRINT_STATISTICS = 1 变量在XCode上统计APP启动时间pre-main阶段,但是在XCode13.0 & iOS15之后,通过设置变量的方式在XCode上失效啦;
Instrument: App Launch & Time Profiler 取而代之
Xcode---> Product--->Profile进入到Inst
mac 安装虚拟机保姆级教程(vmware fusion)
安装前提更新MAC OS 版本安装vmware fusion(从 VMware Fusion 13.5.2 开始已支持无需输入密钥即可使用,前提需要更新mac OS 版本否则不兼容 官网链接:VMware Fusion Pro: Now Available Free for Personal Use - VMware Fusion Blo
Xcode14.3打包的APP在iOS13.x上启动崩溃闪退
Xcode14.3 ,iOS13.6.1, iOS13.6, iOS13.3, iOS13.x
今天用Xcode 14.3打包安装在iOS 13.x的手机启动崩溃,但是连着Xcode调试时没有问题,不连着Xcode14.3时启动APP就闪退。
从苹果官网看到也有不少人遇到,但是没有具体的解决方案。
目前从以下几点处理这个问题:
1.降级Xcode到14.2打包可解决该问题
2.app 最低目标版
第二章 RocketMQ 基本消息
基本消息发送有三种姿势:同步、异步、单向。
同步:消息发送到 Broker 成功后,返回发送成功结果;这种可靠性同步地发送方式使用的比较广泛,比如:重要的消息通知,短信通知。
异步:消息发送出去后立即返回结果,可以在发送成功的消息回调中,查看消息是否发送成功;异步消息通常用在对响应时间敏感的业务场景,即发送端不能容忍长时间地等待 Broker 的响应。
单向:消息发送出去,Broker 不返回