一.共享内存简介 共享内存是进程间通信中高效方便的方式之一.共享内存允许两个或更多进程访问同一块内存,就如同 malloc() 函数向不同进程返回了指向同一个物理内存区域的指针,两个进程可以对一块共享内存进行读写. 共享内存并未提供进程同步机制,使用共享内存完成进程间通信时,需要借助互斥量或者信号量来完成进程的同步.这里说一下互斥量与信号量的区别.互斥量用于线程的互斥,信号量用于线程的同步,这是互斥量与信号量的本质区别,其次信号量实现互斥量的功能. 本文结合个人实际项目需求,采用互斥量实现进程间…
APP被苹果APPStore拒绝的各种原因 1.程序有重大bug,程序不能启动,或者中途退出. 2.绕过苹果的付费渠道,我们之前游戏里的用兑换码兑换金币. 3.游戏里有实物奖励的话,一定要说清楚,奖励由本公司负责,和苹果没有关系. 4.用到苹果的标志.(应用的设计和Apple的Logo风格太像了也会被拒) 5.网络功能不能正常访问. 6.图标不能点击,不能点击的图标要置灰,或者直接隐藏. 7.没有设置default页,启动画面为黑屏,有一定概率被拒绝. 8.一个应用在线,但你想在发一个豪华版之类…
首先说下让自己的程序支持iPhone6和6+,第一种使用官方提供的launch screen.xib,这个直接看官方文档即可,这里不再多述:第二种方法是和之前iPhone5的类似,比较简单,为iPhone6和6+添加两张特殊的png iPhone6:命名:Default-375w-667h@2x.png   分辨率:750*1334 6+ 命名:Default-414w-736h@3x.png  分辨率:1242*2208 注意: 如果要在app的介绍页面里有"为iPhone6,6 plus优化…
假如你也是一个java程序员,而你又不是很懂Socket. 下面我的这篇文章也许能帮助你一些. http://xiva.iteye.com/blog/993336 首先我们写好上面文章中的server端. 下面我们可以访问一下下面的地址: http://code.google.com/p/cocoaasyncsocket/ 这是一个开源框架.呵,不知道拿到自己程序中使用是否涉及侵权. 但是这句话"The CocoaAsyncSocket project is in the public doma…
先安装hadoop1.2.1,见http://blog.csdn.net/jediael_lu/article/details/38926477 1.配置hbase-site.xml <property> <name>hbase.zookeeper.quorum</name> <value>master,slave1,slave2</value> </property> <property> <name>hba…
为了方便的和Windows之间进行交互,samba必不可少. 当然,他的安装使用也很简单: 安装: sudo apt-get install samba sudo apt-get install smbclient 就是这么简单,装好之后可以使用ps -aux查看samba是否启动. 接下来就是修改配置文件了: 配置文件在/etc/samba/smb.conf 使用vi打开配置文件,在文件末尾加上: 保存退出,重启samba,samba restart 重启之后,在Windows浏览器中输入:\…
参考文献:ubuntu 13.04 安装 JDK 先去oracle官网下载jdk,这一段我就不赘述了. 下载好之后先解压,解压方式参见 linux常用的压缩与解压缩命令 ,解压之后,将文件剪贴至/usr/lib/中的jvm文件夹中,同时把文件名更换为java,如果没有这个文件夹就自己建一个,剪贴以及新建文件夹命令参见ubuntu文件管理常用命令 . 上面工作做完之后,就可以添加环境变量了 sudo vi ~/.bashrc 在环境变量中添加 export JAVA_HOME=/usr/lib/j…
遍历构造器的内存管理 a.遍历构造器方法内部使用autorelease释放对象 b.通过遍历构造器生成的对象.不用释放. 内存的管理总结 1.想占用某个对象的时候,要让它的引用计数器+1(retain操作) 2.当不想再占用某个对象的时候,要让它的引用计数器-1(release操作) 3.谁alloc谁release,遍历构造器使用autorelease 另:当一个属性遵循了协议的时候(该属性就是代理),这时使用内存组的assign修饰. 多态:父类指针 指向 子类对象 没有继承就没有多态 父类…
在多线程编程中,常常需要从主线程传递参数给子线程或在主线程中获得子线程的计算结果, 若使用全局变量实现,必然需要对临界区保护,因此导致大量的切换工作造成效率的低下: 而利用进程间的参数传递可以解决这一问题. 两个方向的参数传递: 1.主线程向子线程传递参数: 通过函数 int pthread_create(pthread_t *thread, const pthread_attr_t *attr,void *(*start_routine) (void *), void *arg); 在创建线程…
本程序实现在指定目录下递归查找无效的符号链接. 1.设计思路 逐个读取给定目录中的目录项,判断类型 (1)若为目录,则读取该目录中的目录项并判断类型: (2)若为链接文件,则读取出其指向文件的名称(绝对/相对路径): 若内容为绝对路径(以/开头),直接作为目标文件的路径: 若内容为相对路径(不以/开头),将链接文件所在目录的路径作为前缀: 这样构造出目标文件的路径,尝试用stat函数直接读取目标文件,若返回-1 则认为该链接文件失效.选用stat的好处是可以跳过连续符号链接,查看链接 最终指向的…