摘要: 信号量实现互斥的一个方法。只有得到信号量的进程才能执行临界区的代码,当得不到信号量时,进程会进入休眠等待状态。用到的函数,结构体及其他:/*定义并初始化信号量*/DECLARE_MUTEX(name) /*获得信号量,此时进程处于D状态,*进程处于睡眠状态,但是此刻进程是不可中断的。*不可中断,指的并不是CPU不响应外部硬件的中断,而是指进程不响应异步信号。*/void down(struct semaphore *sem)/*释放信号量*/void up(struct semaphore *sem) 驱动程序:#include <linux/module.h> #include 阅读全文
posted @ 2013-06-12 20:01 爱生活,爱编程 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 再奉上一篇容斥原理的题目,其实还是统计区间里与某个数互素的数的个数。同类型题目:【HDU 1695 GCD】【HDU 4407 SUM】 这道题目只需要二分区间(1,x)的右端点x,统计(1,x)与s互素的数的个数即可。 #include <cstdio>#include <cstring>#include <vector>#include <algorithm>using namespace std;typedef long long LL;#define N 1000100bool is[N];vector<int> pr, g; 阅读全文
posted @ 2013-06-12 19:58 爱生活,爱编程 阅读(172) 评论(0) 推荐(0) 编辑
摘要: If you are already a vim and git master and you are impatient, please jump to theQuick start section at the end of this article.1 Set up vimdiffThe vimdiff as a merge tool will display several buffers to show the yours/theirs/original changes.The key point is to set up the vimdiff so that the buffer 阅读全文
posted @ 2013-06-12 19:54 爱生活,爱编程 阅读(1428) 评论(0) 推荐(0) 编辑
摘要: 1,问题:An AnnotationConfiguration instance is required to use <mapping class="vo.Student"/> 解答:错误:SessionFactory factory = new Configuration().configure().buildSessionFactory(); //这句是用映射文件为xml的 正确:SessionFactory factory = new AnnotationConfiguration().configure().buildSessionFactory(); 阅读全文
posted @ 2013-06-12 19:50 爱生活,爱编程 阅读(327) 评论(0) 推荐(0) 编辑
摘要: WebView中存在着两种缓存:网页数据缓存(存储打开过的页面及资源)、H5缓存(即appcache)。 一、网页缓存 1、缓存构成 /data/data/package_name/cache/ /data/data/package_name/database/webview.db /data/data/package_name/database/webviewCache.db 2、缓存模式 较难理解的是以下两个模式: LOAD_DEFAULT,根据cache-control决定是否从网络上取数据。 LOAD_CACHE_ELSE_NETWOR... 阅读全文
posted @ 2013-06-12 19:47 爱生活,爱编程 阅读(6654) 评论(1) 推荐(0) 编辑
摘要: 使用java数组之前必须先对数组对象进行初始化。当数组的所有元素都被分配了合适的内存空间,并指定了初始值时,数组初始化完成。程序以后将不能重新改变数组对象在内存中的位置和大小。从用法角度来看,数组元素相当于普通变量,程序既可以把数组元素的值赋给普通变量,也可把普通变量的值赋给数组元素。1.1数组初始化数组是大多数编程语言提供的一种复合结构,如果程序需要多个类型相同的变量时,就可以考虑定义一个数组。Java语言的数组变量时引用类型的变量,因此具有Java独有的特性。1.1.1Java数组是静态的Java语言是典型的静态语言,因此Java的数组是静态的,即当数组被初始化之后,该数组的长度是不可变的 阅读全文
posted @ 2013-06-12 19:44 爱生活,爱编程 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 这段时间看到大家对maven学习这么有兴趣,把自己学到的做个总结为大家分享学习心得。 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。 maven是什么maven这个词可以翻译为“知识的积累”,也可以翻译为“专家”或“内行”。作为apache组织中的一个颇为成功的开源项目,maven主要服务于基于java平台的项目构建、依赖管理和项目信息管理。nmaven能干什么使项目构建构成更容易;提供统一构建系统(编译、测试、持续整合...);提供高质量的项目信息(依赖、报告、site...);提供开发的最佳实践指南;能无缝的加入... 阅读全文
posted @ 2013-06-12 19:40 爱生活,爱编程 阅读(239) 评论(0) 推荐(0) 编辑
摘要: package com.citi.hnw.mainframe;import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.List;import org.apache.log4j.Logger;public class getCusipList { private static Lo 阅读全文
posted @ 2013-06-12 19:36 爱生活,爱编程 阅读(891) 评论(0) 推荐(0) 编辑
摘要: 法律声明:《linux 3.4.10 内核内存管理源代码分析》系列文章由陈晋飞(ancjf@163.com)发表于http://blog.csdn.net/ancjf,文章遵循GPL协议。欢迎转载,转载请注明作者和此条款。slab通用长度内存分配================== 在slab分配内存并不是总是要先创建一个slab缓存,然后创建的缓存中分配内存。在slab中创建了预先定义好的一些通用缓存,使得我们直接按长度就可以进行内存分配。我们把这些缓存叫做长度缓存。对长度缓存专门定义了一个结构struct cache_sizes。在文件中include/linux/slab_def.h定义 阅读全文
posted @ 2013-06-12 19:33 爱生活,爱编程 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 今天我们来实现情景对话。这是一个重要的功能,没有它,游戏将变得索然无味。所以我们不得不来完成它。但是要知道,使用对话可不是一件简单的事,因为它内部的东西很多,比如说人物头像,人物名称,对话内容。。。因此我们只能通过数组+JSON来将对话信息装起来,然后根据信息作出不同的显示。接下来我便要向大家展示实现方法。先看本系列文章目录: 如何制作一款HTML5 RPG游戏引擎——第一篇,地图类的实现 http://blog.csdn.net/yorhomwang/article/details/8892305 如何制作一款HTML5 RPG游戏引擎——第二篇,烟雨+飞雪效果 http://blog... 阅读全文
posted @ 2013-06-12 19:29 爱生活,爱编程 阅读(394) 评论(0) 推荐(0) 编辑
摘要: 所谓的防御式程序设计并不是增强程式的防御,这样是没有用的。有太多种位置的输入域状况可能会出现。如何在已知、位置的环境中,程序对于正确、错误输入的反应,才是真正的防御式程序设计。下面我们就从型别转换、例外处理三方面来讨论防御式程序设计。(一)、型别转换每个值都有相关的型别,该型别定义属性,例如配置给值的空间量、能够拥有的可能值范围,以及提供的成员。许多值都可以表示成多种型别的。例如,数值4可以表示成整数值或浮点值。型别转换建立新型别的值,与原型别的值相等,但不一定会保留原使物件实际的值。当编译器检测到不安全的转换时,便会发生错误或是警告,这就需要我们最好明确型别转换,便可以在设计时期检查出错误。 阅读全文
posted @ 2013-06-12 19:26 爱生活,爱编程 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 成为码农以后,一共拥有过两台笔记本,一台是09年的戴尔Latitude E6400,另一台就是现在用的Samsung NP700Z5C。好吧,或许这两个机型都没听说过,但是这两款的确都是神一般存在的机器。其实,买这两台电脑纯粹是巧合,相同的巧合。09年时我本来是准备买当时很热门的HP Probook 4411s的,可惜太热门没有货,于是被人转型成了那台戴尔。我说它是神机,因为这个电脑的借口太丰富:WiFi+蓝牙、指纹、NFC、IC卡读卡器、ExpressCard、1394、DisplayPort、4个USB,好吧,什么借口都有,内部还有3个PCI-E,光驱可以热插拔。最关键是背光键盘,当时只有 阅读全文
posted @ 2013-06-12 19:22 爱生活,爱编程 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 存到自己的微云里面,连接:http://url.cn/EcYTwc(话说微云还是方便多了,在国内付费什么的都比较容易,速度也快,之前用的google drive和skydrive就是速度和付费太麻烦了。)guerilla的lead tech coder带来的引擎方面在开发KZ4:ShadowFall时候的一些经验。背景guerilla并不是一个特别大的studio,而且现在除了kz4还在开发一个新的游戏(没有公布),所以在技术方面没有那么多的革新也是情理之中。路还是踏实的一步步走比较好。数据一系列非常有用的数据:并行性:传统的渲染,动画,物理高度并行之外,AI和逻辑也达到了%80都是并行的运行 阅读全文
posted @ 2013-06-12 19:18 爱生活,爱编程 阅读(201) 评论(0) 推荐(0) 编辑
摘要: .NET Framework 数据提供程序是专门为数据处理以及快速地只进、只读访问数据而设计的组件。一、Connection1、介绍 开启程序和数据库之间的连结 ADO.NET底层 可自己产生对象或由其它对象自动产生。2、属性和方法 Connectionstring属性:获取或设置连接语DataBase属性:获取当前打开数据库 DataSource属性:获取打开数据库的连接实例注:必须显示关闭3、实例连接数据库的步骤: 定义连接字符串stringconnstr=“server=.;database=数据库名; Integrated Security=SSPI”; 创建 Conn... 阅读全文
posted @ 2013-06-12 19:15 爱生活,爱编程 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 1、定义类: @interface 类名 : 父类 @end 2、使用:(冒号)表示继承一个类 Student : NSObject 3、使用()定义一个Catagory(类别)* 作用:在不改变原有类结构的基础上,扩展原有类的方法(不能扩展属性),但不建议重载原有类的方法 * 开发工具默认生成的文件为:类名+Catagory名称 * Catagory可以写在单独的文件中,也可以写在原有类的文件中,如何写根据需求来决定。 4、使用<>表示实现一个Protocol(协议),如需实现多个协议,将协议名以逗号分隔都写在括号中即可 *可以理解为java中的接口,但不同的是,实... 阅读全文
posted @ 2013-06-12 19:11 爱生活,爱编程 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 1006: [HNOI2008]神奇的国度Time Limit:20 Sec Memory Limit:162 MB Submit:1277 Solved:514 [ Submit][ Status][ Discuss] Description K国是一个热衷三角形的国度,连人的交往也只喜欢三角原则.他们认为三角关系:即AB相互认识,BC相互认识,CA相互认识,是简洁高效的.为了巩固三角关系,K国禁止四边关系,五边关系等等的存在.所谓N边关系,是指N个人 A1A2...An之间仅存在N对认识关系:(A1A2)(A2A3)...(AnA1),而没有其它认识关系.比如四边关系... 阅读全文
posted @ 2013-06-12 19:07 爱生活,爱编程 阅读(338) 评论(0) 推荐(0) 编辑
摘要: 浏览Heap Dump可以使用VisualVM浏览heap dump文件的内容,从而快速查看在堆中分配的对象。Heap dumps在主窗口的heap dump子标签页中显示。你可以打开保存在本地的heap dump文件(.hprof)或者使用VisualVM捕获正在运行的程序的heap dumps。一个heap dump是Java虚拟机(JVM)在某一时刻所有对象的快照。JVM从堆中为所有的类实例和数组分配内存。当一个对象不再被使用并且没有对它的引用时,垃圾回收器回收其堆内存。通过查看堆,你可以找到对象创建的位置,发现对象的引用。如果JVM试图从堆中移除不再需要的对象时失败了,VisualVM 阅读全文
posted @ 2013-06-12 19:04 爱生活,爱编程 阅读(1441) 评论(0) 推荐(0) 编辑
摘要: try { String jdbcURL ="jdbc:oracle:thin:@fitwsswdb1.nam.nsroot.net:1522:RVDBP1"; Properties props = new Properties(); props.put("user", "rvuser"); props.put("password", "user123"); props.put("defaultRowPrefetch", "100"); props.put 阅读全文
posted @ 2013-06-12 19:00 爱生活,爱编程 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 介绍Runtime使用简单的循环动画播放一次动画连续播放动画程序控制的骨骼动画其他功能慢动作和快动作动画混合问题工具使用上Runtime的问题介绍Spine是一个2D的骨骼动画编辑器, 因为其良好的UI设计及完整的功能, 在kickstarter上发布以后立即收到追捧, 作为一个几乎只有游戏开发者才会使用的小众工具, 募集了远超目标5倍的资金, 共计6.7W多美元. 我在其项目发布后, 成为了Spine在kickstarter的早一批backer, 这是我在kickstarter上第一个, 也是目前唯一一个支持的项目. 随后, 通过不断收到的邮件见证了Spine逐步完善的过程, 直到其发出ta 阅读全文
posted @ 2013-06-12 18:57 爱生活,爱编程 阅读(1749) 评论(0) 推荐(0) 编辑
摘要: Is Fibonacci Search really "faster" than Binary Search? 申明:本文讨论的搜索对象为有序数组,不是数学上讨论的函数。 1. 介绍 对经过各种Sort算法排好序之后的有序数组进行检索的Search算法大致有以下三种:线性查找O(n),二分查找O(log(n)),斐波那契查找O(log(n))。 前两者用的比较多,对于Fibonacci Search,应该蛮多人和我一样只闻其名,不见其人吧。 数学原理如下: 斐波那契数列:0、1、1、2、3、5、8、13、21、……(有人喜欢从1开始,随你~~~) ... 阅读全文
posted @ 2013-06-12 18:53 爱生活,爱编程 阅读(638) 评论(0) 推荐(0) 编辑