- __weak如何实现对象值自动设置为nil的
Sweet丶
详情请查看:http://blog.csdn.net/hherima/article/details/38661803总结如下:weak的功能:*若使用__weak修饰符的变量引用对象被废弃时,则将nil赋值给该变量*使用附有__weak修饰符的变量,就是使用注册到autoreleasepool的对象ARC对象释放的过程:1.objc_release2.因为引用计数为0所以执行dealloc3._
- 509,关于@autoreleasepool(面试点:1,如果你正在编写不基于UI 框架的程序,比如命令行工具。2, 如果你编写的循环创建了很多临时对象。 你可以在循环中使用自动释放池bloc...
枫叶1234
面试经常会有这样的问题:1.什么是@autoreleasepool?2.里面对象的内存什么时候释放?3.什么时候要用@autoreleasepool?回答:1.@autoreleasepool是自动释放池,让我们更自由的管理内存2.当我们手动创建了一个@autoreleasepool,里面创建了很多临时变量,当@autoreleasepool结束时,里面的内存就会回收3.ARC时代,系统自动管理自
- autoreleasepool自动释放池(就问你点不点心了...)
best_su
送一波干货:所谓自动释放池:自动释放池是用来存放对象的,存储在自动释放池中的对象,在自动释放次销毁的时候会给池子中的每一个对象发送一个release消息,即调用对象的relesae方法可以解决的问题:将创建的对象存入到自动释放池中,就不需要在手动的relese这个对象了。因为池子销毁的时候就会自动的调用对象的release方法好处:将创建的对象存储到自动的释放池中,不需要在写release如何创建
- IOS-OC-json解析和XML解析代码案列
草根小强
json解析#import#import"Model.h"#import"JSON.h"intmain(intargc,constchar*argv[]){@autoreleasepool{NSString*path=@"/Users/qianfeng/Desktop/OC课堂老师代码/oc上课代码/1231/easy.json";//系统自带方法的解析NSData*data=[NSDatadat
- OC 对象本质
曼谷第一开膛手
一个NSObject对象占用多少内存?对象的isa指针指向哪里?OC的类信息存放在哪里?intmain(intargc,char*argv[]){@autoreleasepool{NSObject*objc=[[NSObjectalloc]init];return0;}}第一个问题就是转化为objc这个指针指向的内存区域有多大。为了搞清这个问题,我们要搞清楚NSObject在内存是怎么布局的,他的
- main.m主函数介绍
frank_pang1995
整个App程序的主函数,入口函数intmain(intargc,char*argv[]){//自动内存释放池@autoreleasepool{//UIKit框架结构启动函数//参数一:argc,启动时带有参数的个数//参数二:argv,参数列表//参数三:要求传入一个主框架类对象,如果参数为nil,系统会自动用默认的框架类作为主框架类名//参数四:主框架的代理类对象returnUIApplicat
- 019-C++跨平台开发内存检测
一亩三分甜
《C++文章汇总》上一篇介绍了《018-智能指针》,本文介绍实际开发中利用Xcode工具对内存进行检测。在音视频开发中,不可避免要使用C++,需要我们自己管理内存,不像OC可通过自动释放池autoreleasepool管理内存,如何知道我们写的C++代码是否有内存忘记释放,内存泄露,内存破坏呢?可充分利用Xcode检测调试工具进行检测调试1.开发中遇到的问题需求图片.png图片.png现实开发中图
- Objective - C block(二)block的类型及捕获变量
爱玩游戏的iOS菜鸟
(一)block捕获变量类型为了保证block内部能够正确访问外部的变量,block有一个变量捕获机制不同的变量类型捕获(1)变量捕获为autointmain(intargc,constchar*argv[]){@autoreleasepool{intage=10;//auto变量void(^block2)(int,int)=^(inta,intb){NSLog(@"thisisablock==%
- iOS底层 -- 内存管理之autorelase、autoreleasepool原理
happy神悦
自动释放池自动释放池的主要底层数据结构是:__AtAutoreleasePool、AutoreleasePoolPage调用了autorelease的对象最终都是通过AutoreleasePoolPage对象来管理的__AtAutoreleasePool结构体struct__AtAutoreleasePool{__AtAutoreleasePool(){//构造函数,在创建结构体的时候调用atau
- AutoreleasePool探究
飞奔的小鲨鱼
虽然现在已经是arc的时代了,不用我们自己管理对象的释放问题,但在面试的过程中难免会被问到这方面的问题,另一方了解AutoreleasePool的实现原理也会使我们对内存管理这方面有更加清晰的认识。再看这篇文章之前,先回到我们的题目中来,假如你现在正在面试,面试官问你,说说你对AutoreleasePool的了解。。。AutoreleasePool就是我们常说的自动释放池,在mrc的时候采用引用计
- iOS开发之break/continue/return
魔力双鱼
关于break/continue/return,都有结束或者跳出循环的意思,具体如何?1.关于break运行下边的程序,将看到i循环到2时候就结束,当i等于2时,循环体内遇到break语句,程序跳出循环intmain(intargc,constchar*argv[]){@autoreleasepool{//break用于完全结束一个循环,跳出循环体,不管是那种循环,//一旦在循环体中遇到break
- iOS--经典问题:runtime三种调用方式
OXHO
创建一个OC项目,创建项目目录结构对象方法调用源码如下:main.m#import#import"Person.h"#includeintmain(intargc,constchar*argv[]){@autoreleasepool{//insertcodehere...Person*p=[[Personalloc]init];[prun];objc_msgSend(p,sel_registerN
- OC-字符串
SauronKing
程序设计-Object-Ciosobjective-c
前言本篇文章介绍OC的字符串字符串常量要使用Objective-C语言创建一个常量字符串对象,需要在字符串开头放置一个@字符,下面的语句创建了一个常量字符串@"Programoningisfun"NSLogNSLog函数可以打印格式化对象,类似于C语言的printf看下面的例子:intmain(intargc,constchar*argv[]){@autoreleasepool{NSString*
- 11-6 指针(Pointer)
草根小强
#importstructMyStruct{intid;char*name;}*pMyStruct;typedefint(*fun)(int,int);intadd(intm,intn){returnm+n;}intmul(intm,intn){returnm*n;}//指针intmain(intargc,constchar*argv[]){@autoreleasepool{intcount=10
- 2021-09-24
我是wLiang
RunLoop与线程的关系RunLoop对外的接口RunLoop的ModeRunLoop的内部逻辑RunLoop的底层实现苹果用RunLoop实现的功能6.1.AutoreleasePool6.2.事件响应6.3.手势识别6.4.界面更新6.5.定时器6.6.PerformSelecter6.7.关于GCD6.8.关于网络请求RunLoop的实际应用举例7.1.AFNetworking7.2.As
- iOS内存管理(三)AutoReleasePool & NSRunLoop 底层分析
辉辉岁月
本文主要分析AutoReleasePool以及NSRunLoop的底层实现AutoReleasePool自动释放池自动释放池是OC中的一种内存自动回收机制,它可以将加入AutoreleasePool中的变量release的时机延迟,简单来说,就是当创建一个对象,在正常情况下,变量会在超出其作用域的时立即release。如果将对象加入到了自动释放池中,这个对象并不会立即释放,会等到runloop休眠
- Runloop的认识
畵_460e
一:什么是Runloop(面试题:什么是RunLoop?项目中有用到吗?)顾名思义,运行循环,在程序运行过程中循环做一些事情,应用范畴:定时器timer、PerformSelector、GCD、事件响应、手势识别、界面刷新、网络请求、AutoreleasePool,runloop的基本作用就是保持程序的持续运行,处理APP中的各种事件,接受省CPU资源,提高程序性能,该做事的时候做事,该休息的时候
- iOS block以及变量捕获
学海无涯乐作舟
iOS学习笔记ios
不同类型变量的捕获方式1、局部变量和block使用局部变量的blockintmain(intargc,constchar*argv[]){@autoreleasepool{intage=10;block=^{//age的值捕获进来(capture)NSLog(@"ageis%d,",age);};age=20;block();}return0;}clang编译后的底层代码struct__test_
- iOS查看Runtime运行过程--Clang--轻量级编译器随笔
OXHO
首先创建一个C语言工程:选择注意项项目名随便写。目录结构如下:目录结构main文件里:#import#import"Person.h"intmain(intargc,constchar*argv[]){@autoreleasepool{//insertcodehere...NSLog(@"Hello,World!");Person*p=[[Personalloc]init];[prun];}ret
- Objective-C中使用STL标准库Queue队列
林鸿群
Objective-Cobjective-cc++算法
1.修改.m文件为mm2.导入queue头#include3.使用:#import#include#includeusingnamespacestd;intmain(intargc,constchar*argv[]){@autoreleasepool{NSLog(@"C++标准库queue队列使用");queueq;queueq2;for(inti=0;i0){NSLog(@"q使用标准库queu
- 011-Application,VIewController,View的总结
Yasic
应用程序=代码+系统框架iOS应用入口——Main函数main函数由Xcode在创建工程时提供,一般不改变其中内容,除非真的知道自己在做什么。#import#import"AppDelegate.h"intmain(intargc,char*argv[]){@autoreleasepool{returnUIApplicationMain(argc,argv,nil,NSStringFromClas
- 拾陆:AutoreleasePool实现原理
FY_Chao
前言通过前面runloop文章中,我们知道在mainRunloop存在两个关于autoreleasePool的RunLoopObserver,分别监听了runloop的①.进入(Entry)、②.BeforeWaiting(准备进入休眠)和Exit(即将退出Loop)进入(Entry):监听到进入后会调用_objc_autoreleasePoolPush()函数创建自动释放池。准备进入休眠(Bef
- iOS性能分析小计
呆木大人
1.启动时间1.1main启动前时间测量:通过环境变量,直接打印run>>arguments>>environment>>+号Name:DYLD_PRINT_STATISTICSValue:11.2main之后通过计时打印时间main.m:CFAbsoluteTimestartTime;intmain(intargc,char*argv[]){@autoreleasepool{startTime=
- iOS-内存管理分析(下)
似水流年_9ebe
前言iOS-内存管理分析(上)以及iOS-内存管理分析(中)分析了内存的分区,布局,散列表,弱引用计数表等相关知识,这篇文章继续分析内存管理。1自动释放池初探在我们的demo工程的main文件代码如下#importintmain(intargc,constchar*argv[]){@autoreleasepool{NSLog(@"Hello,World!");}return0;}我们通过clang
- 浅谈Block
畵_460e
block的本质先看下面代码再转成C++代码之后是怎样的,xcrun-sdkiphoneosclang-archarm64-rewrite-objc源文件-ocpp文件intmain(intargc,constchar*argv[]){@autoreleasepool{void(^block)(void)=^{NSLog(@"Hello,World!");};block();}转成的cpp文件代码
- 《Objective-C高级编程 iOS与OS X多线程与内存管理》7
我才是臭吉吉
内存管理篇:7.ARC实现之__strong及autorelease优化对于持有非自己创建的对象的情况,我们知道,这种情况是指对于非“alloc、new、copy和mutableCopy”开头的并返回对象实例的方法,接收方不负责内存管理。ARC会在方法实现中将返回值加入到autoreleasePool中,待接收方从中取出使用,延迟释放时机。但是实际上,代码并不会都如我们想象的那样,因为会有更优化的
- OC 对象的种类
_一叶孤帆
分类instance对象(实例对象)class对象(类对象)meta-class对象(元类对象)instance对象通过类alloc出来的对象,叫实例对象,每次调用alloc都会产生新的实例对象,分别占据着不同的内存。instance对象在内存中只存储着对象的成员变量和isa#importintmain(intargc,constchar*argv[]){@autoreleasepool{//in
- RunLoop
osnail
什么是RunLoop顾名思义运行循环在程序运行过程中循环做一些事情讲讲RunLoop,项目中有用到吗?应用范畴:定时器(Timer)、PerformSelectorGCDAsyncMainQueue事件响应、手势识别、界面刷新网络请求AutoreleasePool控制线程生命周期(线程保活)解决NSTimer在滑动时停止工作的问题监控应用卡顿性能优化RunLoop的基本作用:1保持程序的持续运行2
- OC 学习记录随笔 之AutoreleasePool
jimboRen
iOS/Mac学习
总资料全是随笔笔记与学习资料。没有规律。自动释放池数据结构classAutoreleasePoolPage:privateAutoreleasePoolPageData继承与AutoreleasePoolPageData,经过综合后的主要结构为:classAutoreleasePoolPage{magic_tconstmagic;__unsafe_unretainedid*next;//能够存储的
- iOS RunLoop
72行代码
RunLoop概念RunLoop是通过内部维护的事件循环(EventLoop)来对事件/消息进行管理的一个对象没有消息处理时,休眠以避免资源占用;有消息需要处理时,立刻被唤醒为什么main函数不会退出intmain(intargc,char*argv[]){@autoreleasepool{returnUIApplicationMain(argc,argv,nil,NSStringFromClas
- Algorithm
香水浓
javaAlgorithm
冒泡排序
public static void sort(Integer[] param) {
for (int i = param.length - 1; i > 0; i--) {
for (int j = 0; j < i; j++) {
int current = param[j];
int next = param[j + 1];
- mongoDB 复杂查询表达式
开窍的石头
mongodb
1:count
Pg: db.user.find().count();
统计多少条数据
2:不等于$ne
Pg: db.user.find({_id:{$ne:3}},{name:1,sex:1,_id:0});
查询id不等于3的数据。
3:大于$gt $gte(大于等于)
&n
- Jboss Java heap space异常解决方法, jboss OutOfMemoryError : PermGen space
0624chenhong
jvmjboss
转自
http://blog.csdn.net/zou274/article/details/5552630
解决办法:
window->preferences->java->installed jres->edit jre
把default vm arguments 的参数设为-Xms64m -Xmx512m
----------------
- 文件上传 下载 解析 相对路径
不懂事的小屁孩
文件上传
有点坑吧,弄这么一个简单的东西弄了一天多,身边还有大神指导着,网上各种百度着。
下面总结一下遇到的问题:
文件上传,在页面上传的时候,不要想着去操作绝对路径,浏览器会对客户端的信息进行保护,避免用户信息收到攻击。
在上传图片,或者文件时,使用form表单来操作。
前台通过form表单传输一个流到后台,而不是ajax传递参数到后台,代码如下:
<form action=&
- 怎么实现qq空间批量点赞
换个号韩国红果果
qq
纯粹为了好玩!!
逻辑很简单
1 打开浏览器console;输入以下代码。
先上添加赞的代码
var tools={};
//添加所有赞
function init(){
document.body.scrollTop=10000;
setTimeout(function(){document.body.scrollTop=0;},2000);//加
- 判断是否为中文
灵静志远
中文
方法一:
public class Zhidao {
public static void main(String args[]) {
String s = "sdf灭礌 kjl d{';\fdsjlk是";
int n=0;
for(int i=0; i<s.length(); i++) {
n = (int)s.charAt(i);
if((
- 一个电话面试后总结
a-john
面试
今天,接了一个电话面试,对于还是初学者的我来说,紧张了半天。
面试的问题分了层次,对于一类问题,由简到难。自己觉得回答不好的地方作了一下总结:
在谈到集合类的时候,举几个常用的集合类,想都没想,直接说了list,map。
然后对list和map分别举几个类型:
list方面:ArrayList,LinkedList。在谈到他们的区别时,愣住了
- MSSQL中Escape转义的使用
aijuans
MSSQL
IF OBJECT_ID('tempdb..#ABC') is not null
drop table tempdb..#ABC
create table #ABC
(
PATHNAME NVARCHAR(50)
)
insert into #ABC
SELECT N'/ABCDEFGHI'
UNION ALL SELECT N'/ABCDGAFGASASSDFA'
UNION ALL
- 一个简单的存储过程
asialee
mysql存储过程构造数据批量插入
今天要批量的生成一批测试数据,其中中间有部分数据是变化的,本来想写个程序来生成的,后来想到存储过程就可以搞定,所以随手写了一个,记录在此:
DELIMITER $$
DROP PROCEDURE IF EXISTS inse
- annot convert from HomeFragment_1 to Fragment
百合不是茶
android导包错误
创建了几个类继承Fragment, 需要将创建的类存储在ArrayList<Fragment>中; 出现不能将new 出来的对象放到队列中,原因很简单;
创建类时引入包是:import android.app.Fragment;
创建队列和对象时使用的包是:import android.support.v4.ap
- Weblogic10两种修改端口的方法
bijian1013
weblogic端口号配置管理config.xml
一.进入控制台进行修改 1.进入控制台: http://127.0.0.1:7001/console 2.展开左边树菜单 域结构->环境->服务器-->点击AdminServer(管理) &
- mysql 操作指令
征客丶
mysql
一、连接mysql
进入 mysql 的安装目录;
$ bin/mysql -p [host IP 如果是登录本地的mysql 可以不写 -p 直接 -u] -u [userName] -p
输入密码,回车,接连;
二、权限操作[如果你很了解mysql数据库后,你可以直接去修改系统表,然后用 mysql> flush privileges; 指令让权限生效]
1、赋权
mys
- 【Hive一】Hive入门
bit1129
hive
Hive安装与配置
Hive的运行需要依赖于Hadoop,因此需要首先安装Hadoop2.5.2,并且Hive的启动前需要首先启动Hadoop。
Hive安装和配置的步骤
1. 从如下地址下载Hive0.14.0
http://mirror.bit.edu.cn/apache/hive/
2.解压hive,在系统变
- ajax 三种提交请求的方法
BlueSkator
Ajaxjqery
1、ajax 提交请求
$.ajax({
type:"post",
url : "${ctx}/front/Hotel/getAllHotelByAjax.do",
dataType : "json",
success : function(result) {
try {
for(v
- mongodb开发环境下的搭建入门
braveCS
运维
linux下安装mongodb
1)官网下载mongodb-linux-x86_64-rhel62-3.0.4.gz
2)linux 解压
gzip -d mongodb-linux-x86_64-rhel62-3.0.4.gz;
mv mongodb-linux-x86_64-rhel62-3.0.4 mongodb-linux-x86_64-rhel62-
- 编程之美-最短摘要的生成
bylijinnan
java数据结构算法编程之美
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
public class ShortestAbstract {
/**
* 编程之美 最短摘要的生成
* 扫描过程始终保持一个[pBegin,pEnd]的range,初始化确保[pBegin,pEnd]的ran
- json数据解析及typeof
chengxuyuancsdn
jstypeofjson解析
// json格式
var people='{"authors": [{"firstName": "AAA","lastName": "BBB"},'
+' {"firstName": "CCC&
- 流程系统设计的层次和目标
comsci
设计模式数据结构sql框架脚本
流程系统设计的层次和目标
 
- RMAN List和report 命令
daizj
oraclelistreportrman
LIST 命令
使用RMAN LIST 命令显示有关资料档案库中记录的备份集、代理副本和映像副本的
信息。使用此命令可列出:
• RMAN 资料档案库中状态不是AVAILABLE 的备份和副本
• 可用的且可以用于还原操作的数据文件备份和副本
• 备份集和副本,其中包含指定数据文件列表或指定表空间的备份
• 包含指定名称或范围的所有归档日志备份的备份集和副本
• 由标记、完成时间、可
- 二叉树:红黑树
dieslrae
二叉树
红黑树是一种自平衡的二叉树,它的查找,插入,删除操作时间复杂度皆为O(logN),不会出现普通二叉搜索树在最差情况时时间复杂度会变为O(N)的问题.
红黑树必须遵循红黑规则,规则如下
1、每个节点不是红就是黑。 2、根总是黑的 &
- C语言homework3,7个小题目的代码
dcj3sjt126com
c
1、打印100以内的所有奇数。
# include <stdio.h>
int main(void)
{
int i;
for (i=1; i<=100; i++)
{
if (i%2 != 0)
printf("%d ", i);
}
return 0;
}
2、从键盘上输入10个整数,
- 自定义按钮, 图片在上, 文字在下, 居中显示
dcj3sjt126com
自定义
#import <UIKit/UIKit.h>
@interface MyButton : UIButton
-(void)setFrame:(CGRect)frame ImageName:(NSString*)imageName Target:(id)target Action:(SEL)action Title:(NSString*)title Font:(CGFloa
- MySQL查询语句练习题,测试足够用了
flyvszhb
sqlmysql
http://blog.sina.com.cn/s/blog_767d65530101861c.html
1.创建student和score表
CREATE TABLE student (
id INT(10) NOT NULL UNIQUE PRIMARY KEY ,
name VARCHAR
- 转:MyBatis Generator 详解
happyqing
mybatis
MyBatis Generator 详解
http://blog.csdn.net/isea533/article/details/42102297
MyBatis Generator详解
http://git.oschina.net/free/Mybatis_Utils/blob/master/MybatisGeneator/MybatisGeneator.
- 让程序员少走弯路的14个忠告
jingjing0907
工作计划学习
无论是谁,在刚进入某个领域之时,有再大的雄心壮志也敌不过眼前的迷茫:不知道应该怎么做,不知道应该做什么。下面是一名软件开发人员所学到的经验,希望能对大家有所帮助
1.不要害怕在工作中学习。
只要有电脑,就可以通过电子阅读器阅读报纸和大多数书籍。如果你只是做好自己的本职工作以及分配的任务,那是学不到很多东西的。如果你盲目地要求更多的工作,也是不可能提升自己的。放
- nginx和NetScaler区别
流浪鱼
nginx
NetScaler是一个完整的包含操作系统和应用交付功能的产品,Nginx并不包含操作系统,在处理连接方面,需要依赖于操作系统,所以在并发连接数方面和防DoS攻击方面,Nginx不具备优势。
2.易用性方面差别也比较大。Nginx对管理员的水平要求比较高,参数比较多,不确定性给运营带来隐患。在NetScaler常见的配置如健康检查,HA等,在Nginx上的配置的实现相对复杂。
3.策略灵活度方
- 第11章 动画效果(下)
onestopweb
动画
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- FAQ - SAP BW BO roadmap
blueoxygen
BOBW
http://www.sdn.sap.com/irj/boc/business-objects-for-sap-faq
Besides, I care that how to integrate tightly.
By the way, for BW consultants, please just focus on Query Designer which i
- 关于java堆内存溢出的几种情况
tomcat_oracle
javajvmjdkthread
【情况一】:
java.lang.OutOfMemoryError: Java heap space:这种是java堆内存不够,一个原因是真不够,另一个原因是程序中有死循环; 如果是java堆内存不够的话,可以通过调整JVM下面的配置来解决: <jvm-arg>-Xms3062m</jvm-arg> <jvm-arg>-Xmx
- Manifest.permission_group权限组
阿尔萨斯
Permission
结构
继承关系
public static final class Manifest.permission_group extends Object
java.lang.Object
android. Manifest.permission_group 常量
ACCOUNTS 直接通过统计管理器访问管理的统计
COST_MONEY可以用来让用户花钱但不需要通过与他们直接牵涉的权限
D