ObjC如何通过runtime修改Ivar的内存管理方式 为什么要这么做? 在iOS 9之前,UITableView(或者更确切的说是 UIScrollView)有一个众所周知的问题: property (nonatomic, assign) id delegate; 苹果将 delegate 的内存修饰符声明为了assign,这是 MRC 时代防止循环引用的不二法门.但是到了 ARC 时代,苹果引入了弱引用修饰符(weak)对原先的(assign)暨非强引用修饰符进行了细分.在大多数场景下,将…
glusterfs中的内存管理方式: 首先来看看glusterfs的内存管理结构吧: struct mem_pool { struct list_head list; int hot_count; int cold_count; gf_lock_t lock; unsigned long padded_sizeof_type; void *pool; void *pool_end; int real_sizeof_type; uint64_t alloc_count; uint64_t pool…
php-fpm目前主要又两个分支,分别对应于php-5.2.x的版本和php-5.3.x的版本.在5.2.x的版本中,php-fpm.conf使用的是xml格式,而在新的5.3.x版本中,则是和php.ini一样的配置风格. 在5.2.x版本中,php-fpm.conf中对于进程管理号称是有两种风格,一种是静态(static)的,一种是类似于apache风格(apache-like)的. Process manager settings <value name=”pm”> Sets style…
Activity 生命周期 Android 系统用栈的形式管理 Activity , 当新的 Activity 被创建是, 会被放置到栈顶, 这个 Activity 会进入到运行状态, 而前一个 Activity 则会被压入栈, 直到新的 Activity 退出, 否则不会出现在前台. 单个 Activity 的生命周期状态以及生命周期方法 根据 Android 文档, 每一个 Activity 都有四个状态, 它们分别是: 当 Activity 位于屏幕的最前面(栈顶),称之为 运行(活动)状…
如果git(icode)不加管理,可能出现枝节蔓生.四处开放的版本库.到处都是分支,完全看不出主干发展的脉络,造成下图的局面: 为了降低合并和版本管理的成本,团队引入一种值得借鉴的管理方式(link) 1.存在一条主分支(master).所有用户可见的正式版本,都从master发布.主分支作为稳定的唯一代码库,不做任何开发使用. 拉取源:无需. 合并目标:无需. 修改:不允许. 生命期:持续. 2.存在一条开发分支(develop).这个分支维护了当前开发中代码的主线,始终保持代码新于maste…
linux最流行的包管理方式除了rpm之外就是debian的deb格式了.目前采用deb管理方式的主流操作系统主要有debian和ubuntu系列.和rpm包管理方式不同的是,虽然debian也有包含所有软件包的诸多iso光盘.但debian使用者更习惯于直接从网络上通过源get软件包现在rpm也有apt-get的port,但还是不够完善,rpm使用者一般是通过yum或者光盘寻找软件简单总结一下debian下管理软件常用的操作1.首先需要配置source,默认配置文件是/etc/apt/sour…
昨天分析的进程的代码让自己还在头昏目眩,脑子中这几天都是关于Linux内核的,对于自己出现的一些问题我会继续改正,希望和大家好好分享,共同进步.今天将会讲诉Linux如何追踪和管理用户空间进程的可用内存和内核的可用内存,还会讲到内核对内存分类的方式以及如何决定分配和释放内存,内存管理是应用程序通过软硬件协助来访问内存的一种方式,这里我们主要是介绍操作系统正常运行对内存的管理.插个话题,刚才和姐姐聊天,她快结婚了,说起了自己的初恋,可能是一句很搞笑的话,防火防盗防初恋,,嘎嘎,这个好像是的吧,尽管…
新版linux系统设备架构中关于电源管理方式的变更 based on linux-2.6.32 一.设备模型各数据结构中电源管理的部分 linux的设备模型通过诸多结构体来联合描述,如struct device,struct device_type,struct class, struct device_driver,struct bus_type等. @kernel/include/linux/devices.h中有这几中结构体的定义,这里只列出和PM有关的项,其余查看源码: struct d…
今天是2013-12-16,今天和明天是我学习oracle生涯中一个特殊的日子.今天晚上进行了一下表空间管理方式的学习,在此记录一下笔记. 对于oracle数据库最小i/0单位是数据块,最想分配空间单位是区,对于表空间的管理其实是对区的管理,在8i之前采用数据字典管理表空间 ,通过uet$和fet$进行管理.可是从8i开始引入了本地管理表空间方式(LMT),以此缓解了系统性能问题(如碎片产生等). 对于oracle段管理方式,在9i之前采用的是mssm手动段空间管理技术,采用了是在数据段头加入f…
首先要明确的是,oracle数据库的备份可以分为逻辑备份和物理备份.           逻辑备份的是通过数据导出对数据进行备份,主要方式有老式的IMP/EXP和数据泵灯方式.适合变化较少的数据库,而对于高可用性数据库,由于这种方式备份的数据只能恢复到备份的时间点,所以并不适用.但由于逻辑备份具有平台无关性,所以更常见的是用来数据迁移及数据移动:           物理备份是通过复制数据文件.参数文件等数据库的物理文件来进行备份.物理备份可以分为冷备份和热备份.冷备份需要在关闭数据库后进行备份…