- 博客(40)
- 资源 (26)
- 收藏
- 关注
原创 Unity开发中总结的一些小技巧
搞Unity3D手机游戏开发快2年了,工作中为了提高效率,攒了一些小技巧,在这里分享一下。1.改变游戏运行速度 在调动画,战斗,特效之类的时候特别有用,加速运行或者减速运行使调试更方便。2.鼠标滚轮调节摄像机视角大小 滚轮快速调节视角大小,直观上就像是把看到的画面拉近拉远了一样,在调一些技能效果的时候尤其有用。
2016-02-14 20:12:14 2334
原创 Python中set、list、dict、tuple的比较
最近使用Concurrence官网中的"ASimple Chat Server"改写成了一个简单的游戏服务器。在服务器长时间运营后,客户端出现无法连接的问题,查看到运行服务器的虚拟机卡死在那里了。刚开始以为是VirtualBox在抽风,不过连续几天都是这种情况,于是开始怀疑游戏服务器出现了内存泄漏。使用"ps-aux | grep python"显示出服务器进程CPU和内存占用情况,果然内
2014-07-24 15:44:48 1133
原创 C# 获取系统硬件信息
在做程序性能分析工具(profiler),需要顺便得到系统硬件的静态信息,以及实时的动态信息。部分代码如下class HardWare { private MEMORY_INFO mi = new MEMORY_INFO(); /// /// 获取内存占用率 /// ///
2014-02-25 23:27:10 1143
原创 STL 底层数据结构
1.vector 底层数据结构为数组 ,支持快速随机访问2.list 底层数据结构为双向链表,支持快速增删3.deque 底层数据结构为一个中央控制器和多个缓冲区,详细见STL源码剖析P146,支持首尾(中间不能)快速增删,也支持随机访问4.stack 底层一般用list或deque实现,封闭头部即可,不用vector的原因应该是容量大小有限制,扩容耗时5.queu
2013-12-27 12:48:27 997
转载 结构体对齐
对齐方式程序编译器对结构的存储的特殊处理确实提高CPU存储变量的速度,但是有时候也会带来一些麻烦,我们可以自己设定变量对齐方式编译器中提供了#pragma pack(n)来设定变量以n字节对齐方式。n字节对齐就是说变量存放的起始地址的偏移量有两种情况:如果n大于等于该变量所占用的字节数,那么偏移量必须满足默认的对齐方式如果n小于该变量的类型所占用的字节数,那么偏移量为n
2013-09-22 13:46:23 857
原创 安装和使用 Intel PIn
一、 安装Building the Example Tools for LinuxTo build allexamples in a directory:$ cd source/tools/ManualExamples$ make allTo build and run a specific example (e.g., inscount0):$ cd s
2013-08-22 11:45:15 4822 4
原创 Intel Pin 学习总结
一、 简介l Pin is a dynamic binary instrumentation framework for the IA-32 and x86-64 instruction-set architectures thatenables the creation of dynamic program analysis tools.Some tools built with
2013-08-22 11:29:32 2716 1
原创 OpenCL学习笔记(1)
在GPU并行计算中,通常我们实现两类并行计算任务并行:把一个问题分解为能够同时执行的多个任务。数据并行:同一个任务内,它的各个部分同时执行OpenCL平台API:平台API定义了宿主机程序发现OpenCL设备所用的函数以及这些函数的功能,另外还定义了为OpenCL应用创建上下文的函数。OpenCL运行时API:这个API管理上下文来创建命令队列以及运行时发生的其他操作。例如,将命令
2013-08-02 17:33:07 1229
原创 Android 开发异常java.lang.VerifyError解决
Android项目更换开发环境时可能会出现 java.lang.VerifyError异常一般高版本ADT运行低版本ADT创建的工程可能会抛出java.lang.VerifyError异常有两个解决方法:1.简单的解决方法是找到项目文件夹下的.classpath文件,把其中的改为<classpathentry exported="true" kind="con" path="c
2013-06-07 23:46:30 3600
原创 Android谷歌地图+定位
安卓的谷歌地图简单实现,能够显示地图,并且定位到当前位置网上的教程和讲解有一大堆,我就不细说了,直接上代码需要注意的是,我这是v2版的,和V1比申请key的地址和方式有点变化,使用也有一点变化。建议英文好的直接去看谷歌官方文档MainActivity.javapackage mobile.android.ch16.google.map;import java.util.List
2013-06-07 09:04:04 4196
原创 嫁给程序员的好处
作为广大程序猿的一份子,哥有义务为广大的程序猿们的终生大事着想啊,在网上收集整理了一些嫁给程序员的好处。如下:一、找程序员不用担心外遇。程序员是对着电脑工作,周围同事大部分是男生。他的生活中基本接触不到mm,所以不会有办公室恋情的发生,也就不会有外遇问题 发生。而且面对的诱惑少,不像销售啊等职位,需要和外人打交道,而且应酬多,所面对的诱惑多,外遇出轨问题容易发生。剪剪常常加班到半夜,我
2013-05-22 23:06:50 3979 6
原创 N宫格-横竖斜的和相等
对任意的正整数N,获得一个N * N的二维数组(只有存在才能获得),横向,竖向,斜向的和相等。功能类:class Ngraphy{ private int n; private int[][] array1; private int[][] array2; public Ngraphy(int n) { this.n = n; } public int[][]
2013-05-22 22:45:10 3338
原创 Android计算器
在学习安卓,做个计算器练手。main.xml <LinearLayout android:background="#ff808080" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:
2013-05-13 21:03:47 3067 6
原创 c++函数返回数组
前两天应聘,做了些笔试题。遇到返回值的问题。。涉及到返回数组。。回来后查了查资料总结如下。不能返回局部数组,因为它是临时变量,暂存在栈区里面,函数调用结束,数组会被释放。如果需要返回数组可以用如下3种方法:(1)调用之前先创建数组,将数组的地址也就是指针作为参数传递进函数。int *GetData(String S,int& arr[]){ int j=0; f
2013-05-04 21:51:01 5045
原创 Java任务调度和线程池理解
Java任务调度实现方法: Timer,Scheduler1、TimerTimer类是用来执行任务的类,它接受一个TimerTask做参数建立任务:使用Timer调度的任务应该继承TimerTask抽象类,该类实现Runnable接口,因些具备多线程的能力,实现该接口的run方法,该方法是需要高度的任务执行体。 调度任务:调度任务通过Timer类完成,调度任务通过sch
2013-04-29 20:27:17 4768
原创 java内部类
一.定义放在一个类的内部的类我们就叫内部类。二.作用1.内部类可以很好的实现隐藏,也就是封装性。一般的非内部类,是不允许有 private 与protected权限的,但内部类可以2.内部类拥有外围类的所有元素的访问权限3.可是实现多重继承(它是内部类存在的最大理由之一,接口也可以实现多重继承)4.可以避免修改接口而实现同一个类中两种同名方法的调用public cl
2013-04-25 20:31:07 4566
原创 虚函数、抽象函数、抽象类、接口
1. Java虚函数虚函数的存在是为了多态。C++中普通成员函数加上virtual关键字就成为虚函数Java中其实没有虚函数的概念,它的普通函数就相当于C++的虚函数,动态绑定是Java的默认行为。如果Java中不希望某个函数具有虚函数特性,可以加上final关键字变成非虚函数PS: 其实C++和Java在虚函数的观点大同小异,异曲同工罢了。 2. Java抽象函数
2013-04-25 12:55:53 5327
原创 c++读取配置文件
最近做的一个C++项目需要做一个配置文件,然后从配置文件读取信息,随便封装了一下,方便使用。下面是代码和使用说明。operate_config.h:/***************************************************************************** 作者: 符星* 日期: 2013-4-14* 目的:
2013-04-22 19:39:55 10997 5
原创 linux编程--fork() 与vfork() 的区别
• vfork() 使用中父子进程共享虚拟内存空间,fork()则不是• vfork保证子进程先运行,而fork 的父子进程运行顺序是不定的,它取决于内核的调度算法例子:#include #include #include int main(){pid_t pid;pid = vfork();if (pid <0) printf(“vfork failed\n”);els
2013-04-21 20:04:30 5899
原创 那些年,我们一起写的情诗
没有珍惜的已经擦肩而过,想要珍惜的也已经擦肩而过。前世的泪,今生的伤,轮回里,我已经一错再错!@写在三月三月。江南。雨一直在飘飘零零,像等待中少女的忧伤暗泪,默默的来去。一声惊雷,从夜的遥远梦处醒来,忘关的窗户上,满是泪痕。风是这时来的,一路摇曳着睡梦中的南国。紫薇花在小巷尽头的墙头,梦见了盛夏的怒放。欸乃的舟
2013-04-18 17:14:04 10044 1
原创 try-catch-finally
前两天做项目,在使用MySqlDataReader时遇到了问题,后来发现是遇到异常时没有关闭myReader导致的。要解决那个问题就要明白try—catch—finally的用法了。1. 为什么要用finally??因为异常进入catch后有时需要直接返回,不继续执行后面的语句,但是还有一部分工作要做(比如释放资源之类的)这时就要写到finally里面。2. 说明:try{
2013-04-16 10:41:53 11528
转载 在网上请不要惹一个程序员
在博客园看到的。。背景:我是一名吊丝程序员,在小公司做事,平时做点私活,最近开了个淘宝店,月交易几千块钱而已,以调试、破解和出售网站模板类为主。起因:4.2号来了一名顾客,要求为其提供的WEB程序开发一注册机,程序中含有病毒,几个浏览器下载后均自动删除,最后无耐用下载工具下载后,只留下了DLL,因为是.net的程序,反编译的过程非常容易,程序的加密分为两部分,对数据库连接字符串和授
2013-04-13 22:20:39 13616 12
原创 长空
记得上学的时候,不知是谁说的了,“眼睛累了,抬头看看蓝天,往远看,一会儿功夫,眼睛脑子都会有霎时的豁然开朗"。这也成了我自此后多年来缓解疲劳的惯用伎俩。“熟视无睹 ” 的确如此,虽然每天都会抬头远观, 却也未曾仔细的从一个细节延伸到下个细节好好的看看,今天的不经意,突然发现它变了, 变得慵懒,不修边幅,灰灰的哀怨。 猛然想起小的时候, 看着蓝蓝的背景上,形态各异,变幻万千的白云, 有的被我制定
2013-04-12 23:51:20 12990 1
原创 DataReader读取值为Null的字段异常
最近在做那个故障树分析和推理诊断项目的时候,要实现复制和粘贴功能,要对数据库中的一些信息也同步进行复制粘贴,最初想到的方法就是把要复制的信息全都查找出来,然后遍历DataReader依次对每条信息的复制粘贴后需要变化的字段进行处理生成一条新的插入语句,复制粘贴后不需要变化的字段就不处理了。直接使用DataReader.GetString(i)方法获取对应字段的值赋到新的插入语句即可。但是遇到了问题
2013-04-11 17:14:17 17716
转载 C++const用法总结
最近在做那个故障树分析和推理诊断项目,其中的推理诊断部分是用c++来写的,毕竟是对火箭的故障分析,甲方突然要求推理结果的精度要很高,让使用贝叶斯网络。找到几种方案,觉得intel的PNL文档比较齐全,应该靠谱,暂时还在研究PNL中。扯远了。。。推理这部分出于性能各方面的考虑用到了不少const,但是不能稀里糊涂的用啊,于是找到了一篇好文章。全部看完,可以彻底搞清楚const的用法,如果只想了解
2013-04-08 21:47:15 15117 2
原创 SQL语句:update---select,insert---select,select---into
最近在做那个故障树分析和推理诊断项目的时候,要实现复制和粘贴功能,涉及到对数据库中的一些信息也同步进行复制粘贴。首先是笨方法,把需要复制的都查出来进行操作后,生成新的插入语句实现复制功能。但是我显然想找更方便的方法,于是就用到了insert--select和update-select。经过研究和使用后,总结用法如下:一、insert---select连用:1. 遇到需要表复制的情况,如将一
2013-04-07 12:14:41 21121 2
转载 Android碰撞检测——多矩形检查
1.像素检测是最精确的一种方式,但是一般为了性能方面的考虑,因为很少用到,但是游戏中很少会有这种纯粹的圆或矩形做检测,这个时候我们就会考虑用多矩形的方式来做检测。2.多矩形的原理是:将一个物体A分解成多个矩形组成A组,将另外一个物体B分解成多个矩形组成B组,然后通过A组中的矩形和B组中的矩形是否发生了碰撞就可得知物体A与物体B是否发生了碰撞。/** * * @
2013-04-06 15:41:39 14790
原创 讲讲cookie和session
以下都是个人见解,如有不妥欢迎指出。1.Session是什么呢???简单来说就是服务器给客户端的一个编号。当一台WWW服务器运行时,可能有若干个用户浏览正在运正在这台服务器上的网站。当每个用户首次与这台WWW服务器建立连接时,他就与这个服务器建立了一个Session(一个常见的错误是以为session在有客户端访问时就被创建,然而事实是直到某server端程序(如Servlet)调用Htt
2013-04-05 22:25:18 14656
原创 写给张国荣,十年
这世界上有一种鸟是没有脚的,它只能够一直的飞呀飞呀,飞累了就在风里面睡觉,这种鸟一辈子只能下地一次,那一次就是它死的时候。《阿飞正传》你是我的偶像,但你不是旭仔,更不是无脚鸟,这个世上没有无脚的鸟。只有一种荆棘鸟:这种鸟一生只歌唱一次,他的歌声委婉动听,万物之中无可比拟。自离巢的那一刻,他就在寻找着,不眠不休,只为寻找那棵属于他的荆棘树。他在荆棘中放声歌唱,至长至锐的尖刺穿透了他的身躯。生命将
2013-04-03 11:21:15 14861 2
原创 好用的网站推荐
1、历届奥斯卡获奖影片汇总下载http://www.oscar1929.com/2、日语网络培训-日语网络课程-日语在线学习http://www.izaodao.com/3、字体管家4.0.1永久免费http://www.xiaa.net/4、装修效果图http://www.jiabk.com/5、Writings.io 是一个提供在线文章写作、
2013-04-03 11:03:14 15614
转载 一次代码review引发的关于单例模式的思考
一次代码调优中发现一个情况,即我在查看memcached的connection时,发现总是维持在100来个左右,当然这看似没什么问题,因为memcached默认connection有1024个。但是我想的是为什么会有100来个,因为我的memcachedclient的产生采用的是单例模式我定义了一个memcachedClientFactory类,主要代码如下:MemcachedClientFa
2013-04-02 13:28:47 14608
原创 桌面共享的实现
1.大二暑假在东软做了个项目“一起上课吧”,是一个linux下的电子教室系统。在局域网内使用,要做两个程序,一个教师端,一个学生端。主要功能是桌面共享、文件收发、即时通讯、监视学生机桌面、控制学生机的功能。用途主要用于教师授课、学生管理等,用c语言做的,使用gtk+来做的界面。2.我主要负责屏幕共享这块,主要思想就是不断的截取屏幕图像,广播到其他机器上。3.为了达到更好的效果,我使用了差位
2013-04-01 20:31:37 24069 4
转载 一个女程序媛征男友的需求说明书
前言常听人说程序员的生活枯燥为人刻板,其实这是你不懂程序员,代码之外,这些高智商的人幽默有趣,论坛常常是他们展现才华的地方(悲哀,因为给他们展现Coder之外的才华的地方和时间太少),我在论坛上看的一篇妙贴和回贴,整理出来供大家一乐。正文目的:征男友一名 概述:要求身高1.76以上(因为本人身高1.70),精通C++编程(起码要比我水平高), 24岁以上因为本人>23岁
2013-03-31 17:03:01 24908 10
原创 c#重写TabControl控件实现关闭按钮
1.c#里面的TabControl控件没有关闭按钮,而且很难看。2.有一些已经做好的第三方控件,但是收费。3.由于我的故障树推理诊断项目在绘图的时候允许同时打开多个文档进行操作,就要实现类似于浏览器的多标签功能,而且要可以关闭。4.所以自己写一个类继承TabControl类,然后重写一些里面的方法即可实现。5.特色:有关闭按钮,标签有背景颜色,选中的标签和没选中的颜色不一样,实现鼠
2013-03-31 12:54:56 24444 2
原创 与或表达式判断相等
1.故障树推理诊断项目中在故障树图形画好后要检查重复性,矛盾性和包含性。所以要把相同事件编号的节点进行推导,替换成最终只含与门,或门的表达式,即E1=A+B+C*D类似的形式。等价于数学算式中的只含有乘号和加好的最终表达式。2.本文是比较两个表达式是否等价。比如a+b+c*d 与b+d*c+a等价(至于如何从故障树图形得到最终推导式不在此讨论)3.首先是以加号来分割,将表达式分成不同的只含
2013-03-30 22:39:45 18525
原创 visio二次开发---判断文档是否已变化(变化了就加个星号*)
1.最近做一个故障树诊断的项目,用visio二次开发,可以同时打开多个绘制的故障树图形文档。项目中需要实现判断文档是否发生变化,这是很多编辑软件的基本功能,变化了就加个星号*。如果整个项目从0开始自己设计就是另外一回事了,这里是基于visio二次开发,首先想到的是去看微软的官方文档,看是否有相关的API,或则是否改变会触发某些事件,遗憾的是我没找到。2.不过visio毕竟是微软的产品,做的就是
2013-03-30 16:57:41 21380 1
原创 C语言判断大小端模式
1.大端模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中;小端模式相反 2.为什么有大小端之分??? 因为在计算机系统中,存储是以字节为单位的,每个地址单元都对应着一个字节,一个字节=8bit。在C语言中除了8bit的char之外,还有16bit的short型,32bit的long型(要看具体的编译器)。对于位数大于8位的处理器,例如16位或者32位的处理器,由
2013-03-29 13:54:08 32431 1
原创 如何交换两个变量的值
四中方法:临时变量 ,算术运算,位运算,指针地址操作1.临时变量 (简单易懂,推荐使用)temp=a; //a,temp,b均为变量。a,b为要交换的两个变量a=b;b=temp; 2.算术运算a=b-a; b=b-a; a=b+a; 3.位运算 / 异或运算(很神奇,但是确实行)a=a^b; b=a^b; a=a^b; 4.指针地址
2013-03-28 21:49:21 18393
原创 Java 单例模式
单例模式分三种:懒汉式单例、饿汉式单例、登记式单例。 单例模式特点: 1、单例类只能有一个实例。 2、单例类必须自己自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例。这些应用都
2013-03-28 11:21:12 17844
原创 Java中自由块的执行顺序
java中的自由块分为静态的自由块和非静态的自由块。非静态自由块的执行时间是:在执行构造函数之前。静态自由块的执行时间是:class文件加载时执行。非静态自由块可以多次执行,只要初始化一个对象就会执行,但是静态自由块只会在类装载的时候执行一次,一般用来初始化类的静态变量的值。每次初始化一个对象,都会导致一次非静态块的执行。如果涉及到继承,则是:首先执行父类的非静态块,然后是父类的构造函数,接着是自
2013-03-28 11:04:05 23015
UniPasteBoard
2016-02-27
VisualAssistX_10.7.1918 完美支持VS2005,VS2008,VS2010,VS2012
2014-01-07
提取网页视频
2013-03-30
videocacheview(从缓存提取)
2013-03-30
vs风格子窗口浮动
2013-03-26
无线网络密码破解方法大全
2013-03-26
复数码相机储存卡恢复
2013-03-26
Ruijie Supplicant 4.31_0805_认证后获取IP
2013-03-26
组建笔记本无限热点
2013-03-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人