0%

NSTimer是iOS最常用的定时器工具之一,在使用的时候常常会遇到各种各样的问题,最常见的是内存泄漏,通常我们使用NSTimer的一般流程是这样的

  1. 在ViewController初始化或加载的地方创建NSTimer,并且通过属性持有(为了关闭)
  2. 在ViewController的dealloc方法关闭定时器(invalidate),并且把NSTimer置为nil

上面做法可能会造成内存泄漏,invalidate方法通常不能放在NStimer.target.dealloc里面,因为NSTimer会对target强引用,而如果target对NSTimer强引用就会造成循环引用

阅读全文 »

升级单个类库

$ pip install --upgrade flask

升级所有类库

由于pip不支持批量操作,这里通过python代码升级

import pip
from subprocess import call

for dist in pip.get_installed_distributions():
call("pip install --upgrade " + dist.project_name, shell=True)

导出已安装的类库配置

$ pip freeze > requirements.txt

安装类库配置

$ pip install -r requirements.txt

之前使用crontab经常遇到一些问题,例如脚本不执行的问题,报错问题,在这里记录一下过程,先介绍一个python工具,可以自动更改和生成crontab运行脚本,使用起来非常友好:plan

阅读全文 »

最近拖延症又犯了,事情总是一拖再拖,一个人学习很容易堕落,在家里,一不小心,刷刷微博,看看新闻,一天就过去了,今年只剩下4个月了,想做的事情总是半途而废,虽然有时候很尽力去控制,但还是浪费了不少时间,下决心在剩余时间里,给自己定一些目标,计划+实施,定好时间点,这里记录一下今年需要看的书和计划

阅读全文 »

scrapy是python最有名的爬虫框架之一,可以很方便的进行web抓取,并且提供了很强的定制型,这里记录简单学习的过程和在实际应用中会遇到的一些常见问题

阅读全文 »

SQLAlchemy是python的一个数据库ORM工具,提供了强大的对象模型间的转换,可以满足绝大多数数据库操作的需求,并且支持多种数据库引擎(sqlite,mysql,postgres, mongodb等),在这里记录基本用法和学习笔记

阅读全文 »

默认情况下,通过Pycharm新建项目时,有个flask选项,新建完成后,是可以支持jinja模板的识别的,例如跳转,语法高亮等功能,但是如果是自己新建的目录,然后用Pycharm导入的,这个时候html文件里面的模板代码无法被高亮,也无法跳转

阅读全文 »

最近在写一个爬虫,需要每天爬取一定量的数据,在自己机器做就太麻烦了,如果能放在服务器上自动跑就好了,找了一下linux系统有个crontab的工具可以用来设置定时任务,这里简单记录一下使用方法

阅读全文 »

与其他语言一样,Object-C的注释也分为两种,一种是普通注释,一种是文档注释,普通注释通常给阅读代码的人看,而文档注释除了可以给阅读的文件的人看还可以被appledoc识别,在使用的时候xcode能给出智能提示,有些工具还可以把文档注释生成文档

阅读全文 »