tips

修改返回按钮: UIImage *backImage = [UIImage imageNamed:@"navback"];     [[UIBarButtonItem appearance] setBackButtonBackgroundImage:[backImage re...

2016-01-19 18:07:12

阅读数 699

评论数 0

cocopods 自动化打包ipa

关于CocoaPodsCocoaPods是一个用于管理iOS工程中所使用第三方开源库的工具,可以大大节省我们在工程中添加和配置第三方库所用的时间。关于CocoaPods的使用,推荐下面两篇博客。《使用CocoaPods来做iOS程序的包依赖管理》作者:唐巧 《CocoaPods进阶:本地包管理》作...

2018-04-11 10:35:13

阅读数 189

评论数 0

如何写一个crash收集sdk

微博以前的crash策略是log批量上传。。。话不多说,上代码,iOS crash 主要分为linux信号异常中断与普通异常捕获。。。- (void)registerHandlerWithAppId:(NSString *)appId {  _appId = appId;  // 1 linux错...

2018-04-10 22:42:17

阅读数 155

评论数 0

volatile 关键字防止指令重排

前言不管是在面试还是实际开发中 volatile 都是一个应该掌握的技能。首先来看看为什么会出现这个关键字。内存可见性由于 Java 内存模型(JMM)规定,所有的变量都存放在主内存中,而每个线程都有着自己的工作内存(高速缓存)。线程在工作时,需要将主内存中的数据拷贝到工作内存中。这样对数据的任何...

2018-04-08 20:17:13

阅读数 1437

评论数 2

iOS copy

Copying 在 iOS 中有很多概念,例如浅拷贝与深拷贝、copy 与 mutableCopy、NSCopying 协议,一直想彻底搞明白这些概念,刨根问底不搞懂不罢休嘛。于是搜 Google 看了一些博客,又去翻了 Apple 相关的文档,发现网上许多博客都理解错了,下面说说自己的理解。浅拷...

2018-04-04 13:08:48

阅读数 231

评论数 0

nlp 本体 语义计算

研究生读的专业。需要补充。

2018-03-28 22:21:54

阅读数 206

评论数 0

蓝牙开发BLE协议流程(iOS为例)

凭借大脑残留的记忆写的BLE的一些概念与接入流程。IOT领域与智能设备通信的方式除了zigbee wifi 就算蓝牙了,BLE(bluetooth low energy)看名字就是低功耗的一个东西,通俗来说ble很简单啊,因为无论是iOS还是android 提供的api 都屏蔽了嵌入式开发的东西,...

2018-03-28 22:00:51

阅读数 376

评论数 0

私有pod包含第三方静态库

Pod::Spec.new do |s| s.name = 'HaierUserCenter' s.version = '3.3.3.1' s.summary = 'try pod' s.homepage = 'https://github.com/niuxinghua' s.licen...

2017-12-22 15:25:46

阅读数 1405

评论数 0

https流程

http是非常常见的应用层协议,是超文本传输协议的简称,其传输的内容都是明文的。在这个混乱的世界,明文传输信息想想就可怕,网络“小混混”的手段远比我们这些凡人高明得多,他们有一万种方式劫持,篡改我们的数据。对于一个网站或者服务,如果你给你的用户两个选择: 通讯数据明文传输,速度快;通讯数据加...

2017-11-20 13:42:07

阅读数 730

评论数 0

自旋锁与互斥锁

为了解决对共享资源的互斥使用,出现了一些锁机制。比如,自旋锁和互斥锁。 自旋锁和互斥锁很类似,在任何时刻,最多只能有一个保持者,也就说,在任何时刻最多只能有一个执行单元获得锁。但是两者在调度机制上略有不同。对于互斥锁,如果资源已经被占用,资源申请者只能进入睡眠状态。但是自旋锁不会引起调用者睡眠,...

2017-09-25 09:46:42

阅读数 864

评论数 0

block copy字符修饰

Objective-C 拾遗:从Heap and Stack到Block Stack和Heap heap和stack是内存管理的两个重要概念。在这里我们指的不是数据结构上面的堆与栈,在这里指的是内存的分配区域。 stack的空间由操作系统进行分配。 在现代操作系统中,一个线...

2017-09-20 16:26:32

阅读数 131

评论数 0

cache policy

cache policy 近期在做ceph cache-tier 相关的事情, 在cache-tier 里面cache有多种更新策略 其实更缓存相关的系统里面, 都存在这几种策略, 比如操作系统的page cache, 业务层使用memcache, redis 作为后端数据库的缓存的时候, 也...

2017-09-12 13:24:37

阅读数 158

评论数 0

IO 概念

在高性能的I/O设计中,有两个比较著名的模式Reactor和Proactor模式, 其中Reactor模式用于同步I/O, 而Proactor运用于异步I/O操作。 什么是同步和异步 同步和异步是针对应用程序和内核的交互而言的, 同步指的是用户进程触发IO操作并等待或者轮询的去查看IO...

2017-08-24 16:09:48

阅读数 233

评论数 0

IO多路复用

摘要:本文属于原创,欢迎转载,转载请保留出处:https://github.com/jasonGeng88/blog 文章一:JAVA 中原生的 socket 通信机制 当前环境 jdk == 1.8 代码地址 git 地址:https://github.com/...

2017-08-23 09:33:39

阅读数 440

评论数 0

IO

摘要:本文属于原创,欢迎转载,转载请保留出处:https://github.com/jasonGeng88/blog 当前环境 jdk == 1.8 知识点 socket 的连接处理IO 输入、输出流的处理请求数据格式处理请求模型优化 场景 今天,和大家聊一...

2017-08-23 09:23:26

阅读数 156

评论数 0

mmap在iOS系统上IO优化的体现

图片的展示是前端开发中必不可少的功能。iOS中,想要在展示一张图片非常简单: 1 2 3 4 UIImage *image = [UIImage imageNamed:fileName];   ...

2017-08-21 11:19:05

阅读数 867

评论数 0

计算机系统体系

要想让代码乖乖运行,自然代码要先经过编译,这篇文章就来聊聊编译体系。 代码的编译过程分为四个阶段,预处理、编译、汇编、链接。而编译阶段是整个过程中最复杂的阶段,编译阶段还可以分为词法分析、语法分析、语义分析。 在一头扎进这四个阶段之间,先聊一下语法、语义。人类之所以能在进化的历史长河中,成为动...

2017-08-21 10:24:02

阅读数 189

评论数 0

滤波

本文将不解释卡尔曼滤波具体的数学原理,不作为小白晋升高端玩家的台阶,只说卡尔曼滤波在简单场景下(处理温度、加速度计、RSSI等数据)怎样只用三行代码实现,及相关参数的设置。代码提供Matlab和Objective-C版本。 最近做的项目用到iPhone收集的蓝牙信号强度,即RSSI值。发现果...

2017-08-16 11:28:33

阅读数 485

评论数 0

framework自动化合并

编译与合并 合并则分为两种,一个手动,一个脚本 如果打包出去只需要真机或者模拟器中的一种,那么我们只需编译就可以得到,合并是为了同时满足模拟器和真机进行的操作。 1、在模拟器 和 真机 环境下分别编译我们的 framework 随便选择一个simulator和 ...

2017-07-30 15:19:16

阅读数 155

评论数 0

synchronized

在上篇多线程安全的文章中,我曾推荐过大家使用@synchronized来使得代码获得原子性,从而保证多线程安全。这篇文章向大家介绍一些@synchronized的知识点和应该避免的坑。 @synchronized原理 @synchronized是几种iOS多线程同步机制中最慢的一个,同...

2017-07-30 09:47:03

阅读数 103

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭