自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

cbbbc

博客博客

  • 博客(1022)
  • 收藏
  • 关注

转载 Unity Mesh合并办法 – 实现换装 优化效率 模型合并

如标题所诉。mesh 分离。可以实现一个 人物 用很多不同形状的武器或者装备什么的。同时 分离可以优化效率。那这里就有一个 mesh如何合并的问题。unity提供了 mesh合并的接口。简单示例代码如下:using UnityEngine;using System.Collections;using System.Collections.Generic; public clas

2016-11-28 21:02:13 5097

转载 关于Shader wants normals, but the mesh doesn't have them的问题

题很明显,着色器需要网格mesh的法线值。但是mesh的法线值为空。即mesh.normals是空的数组。如果mesh是代码实例化生成,则需手动给normals填充值:调用mesh.RecalculateNormals()就ok啦。此外,官方api的一句话需要注意:After modifying the vertices it is often useful to update the norma

2016-11-28 20:00:06 696

原创 释放Activator.CreateInstance创建的对象

调用Dispose接口IDisposable disp = obj as IDisposable;disp.Dispose();

2016-11-22 15:29:31 2335

转载 C# Activator和new的区别

基于接口的Remoting对象是不能用new来创建的,可以直接使用Activator来创建

2016-11-22 15:27:39 4768

转载 C#中Activator.CreateInstance()方法用法分析

本文实例讲述了C#中Activator.CreateInstance()方法用法。分享给大家供大家参考。具体分析如下:Activator 类包含特定的方法,用以在本地或从远程创建对象类型,或获取对现有远程对象的引用。C#在类工厂中动态创建类的实例,所使用的方法为:1. Activator.CreateInstance (Type)2. Activator.CreateInsta

2016-11-22 15:21:09 8074

转载 C#性能优化总结

1. C#语言方面 1.1 垃圾回收 垃圾回收解放了手工管理对象的工作,提高了程序的健壮性,但副作用就是程序代码可能对于对象创建变得随意。 1.1.1 避免不必要的对象创建 由于垃圾回收的代价较高,所以C#程序开发要遵循的一个基本原则就是避免不必要的对象创建。以下列举一些常见的情形。 1.1.1.1 避免循环创建对象 ★ 如果对象并不会随每次循环而改变状态,那么在循环中

2016-11-22 15:17:22 609

转载 signal(SIGPIPE, SIG_IGN)

当服务器close一个连接时,若client端接着发数据。根据TCP 协议的规定,会收到一个RST响应,client再往这个服务器发送数据时,系统会发出一个SIGPIPE信号给进程,告诉进程这个连接已经断开了,不要再写了。 根据信号的默认处理规则SIGPIPE信号的默认执行动作是terminate(终止、退出),所以client会退出。若不想客户端退出可以把SIGPIPE设为SIG_I

2016-11-15 20:57:50 379

转载 signal(SIGCHLD, SIG_IGN)和signal(SIGPIPE, SIG_IGN)

signal(SIGCHLD,SIG_IGN);因为并发服务器常常fork很多子进程,子进程终结之后需要服务器进程去wait清理资源。如果将此信号的处理方式设为忽略,可让内核把僵尸子进程转交给init进程去处理,省去了大量僵尸进程占用系统资源。(Linux Only) 对于某些进程,特别是服务器进程往往在请求到来时生成子进程处理请求。如果父进程不等待子进程结束,子进程将成为僵尸进程(z

2016-11-15 20:55:45 586

转载 使用WinDbg调试程序

WinDbg是微软发布的一款相当优秀的源码级(source-level)调试工具,可以用于Kernel模式调试和用户模式调试,还可以调试Dump文件。WinDbg是微软很重要的诊断调试工具: 可以查看源代码、设置断点、查看变量, 查看调用堆栈及内存情况。调试应用程序(用户模式 user mode) 调试操作系统及驱劢程序(内核模式 kernel mode) 调试非托管程序(

2016-11-09 17:58:52 3893 2

转载 使用WinDBG生成和调试dump文件

程序崩溃(crash)的时候, 为了以后能够调试分析问题, 可以使用WinDBG要把当时程序内存空间数据都保存下来,生成的文件称为dump 文件。 步骤:1) 打开WinDBG并将之Attach 到crash的程序进程2) 输入产生dump 文件的命令WinDBG产生dump 文件的命令是 .dump ,可以选择不同的参数来生成不同类型的dump文件。选项(1): /m 命令行

2016-11-09 17:47:34 3613

转载 WinDbg配置和使用基础

WinDbg是微软发布的一款相当优秀的源码级(source-level)调试工具,可以用于Kernel模式调试和用户模式调试,还可以调试Dump文件。1. WinDbg介绍:    Debugging Tools and Symbols: Getting Startedhttp://www.microsoft.com/whdc/devtools/debugging/debugstart

2016-11-09 14:33:12 361

转载 为WinDbg设置符号文件路径

WinDbg可以通过加载Symbol文件(*.pdb),即时的调试程序。WinDbg如何找到相应的符号文件呢?WinDbg首先在.exe或者.dll所在目录下寻找同名的.pdb文件。如果找不到,WinDbg在Symbol File Path中查找。Symbol File Path可以通过多种方式设置:1、通过WinDbg菜单File->Symbol File Path(Ctrl

2016-11-08 18:35:59 12173

转载 生成程序崩溃的dump文件,使用windbg调试

1,目的有时候程序在客户那里崩溃了,你程序也没有什么有效的log日志能记录到崩溃的细节,那这实在是一件很麻烦的事情。你得向客户反复了解操作内容并希望能在自己这里重现,这个过程想想都很痛苦吧。。使用下面的方法,能在程序崩溃时生成一个自己的dump文件,记录了崩溃时的一些有用的信息,一般能帮你容易地找到出错的地方。2,原理简单地说,就是windows程序

2016-11-08 18:34:19 891

转载 SVN Upgrade working copy

将一份带有SVN管理的代码,拷贝到一台有更高SVN版本的机器上时,可以在代码目录出右击,选择SVN Upgrade working copy,升级代码的SVN版本。原文地址:http://www.cnblogs.com/KeepMovingblog/

2016-11-08 18:27:19 682

转载 IOS7,8设置APP右上角图标通知数字的区别

IOS7:UIApplication *app = [UIApplication sharedApplication]; // 应用程序右上角数字 app.applicationIconBadgeNumber = 99;上面的代码可以搞定IOS8:iOS8中设置application badge value 会抛错:Attempting t

2016-11-02 20:16:04 765

转载 adb shell 启动,停止 android 应用程序

一、adb启动 应用程序(1)查看app包名:进入android操作系统adb shell在root@android:/ # 后边,输入cd data/data然后输入ls这样就能看见android系统上安装的安装包 包名:例如:cn.com.conversant.swiftsync.androidcom.android.backupconfirmc

2016-10-24 11:59:17 509

转载 android如何用adb shell启动应用程序

昨天研究了很久,可能由于基础比较菜吧,所以,没有搜到一个可以直接解决问题的,需要综合几个之后,问题得以解决,记下方法,为了方便自己之后遇到同样问题,也为了方便搜索同样问题的朋友。主要用到了aapt和adb shell am这两个工具。首先,通过aapt获得某个apk的相关信息(参考http://www.cnblogs.com/meizixiong/archive/2013/03/05/29

2016-10-24 11:57:51 958

转载 如何获得Android设备名称(ADB命令详细介绍)

豌豆荚、360手机管家等软件可以获取Android设备名称,显示在界面上,如下图:我们自己如何来获取设备名称 呢?答案如下:在命令行中输入“adb shell”进入shell之后,再输入“cat /system/build.prop”其实,设备信息,主要是存放在“/system/build.prop”文件,通过“cat”命令就可以查看了.下面附上ADB命令的

2016-10-22 14:45:32 13800

转载 如何通过adb命令获取手机型号与设备信息

1、在命令行中输入“adbshell”2、进入shell之后,再输入“cat /system/build.prop| grep "product"”如下图:其实,设备信息,主要是存放在“/system/build.prop”文件,通过“cat”命令就可以查看了。原文地址:http://blog.sina.com.cn/s/blog_5de73d0b01017cz1.ht

2016-10-22 14:44:18 19167

转载 使用adb shell dumpsys检测Android的Activity任务栈

谈起Android程序开发,就需要了解其四个主要的部件:Activity、Service、ContentProvider、BroadcastReceiver。而其中Activity是唯一直接控制程序界面呈现,直面用户操作的部件(当然BrowadCastReceiver也能通过桌面控件(App Widgets)来呈现有限的操作界面)。Android对于Activity有严格的生命周期控制,以

2016-10-22 11:18:03 482

转载 使用meminfo分析Android单个进程内存信息

可以使用adb shell dumpsys meminfo -a /来查看一个进程的memory。截图如下:Naitve Heap Size: 从mallinfo usmblks获得,代表最大总共分配空间 Native Heap Alloc: 从mallinfo uorblks获得,总共分配空间 Native Heap Free: 从mallinfo fordblks获得,

2016-10-22 11:03:17 482

转载 Android 中查看内存的使用情况集常用adb命令

1. 在IDE中查看Log信息当程序运行垃圾回收的时候,会打印一条Log信息,其格式如下:D/dalvikvm: , , ,GC_Reason表示导致垃圾回收的原因以及当前的回收类型,包括以下几类:GC_CONCURRENT:当堆中对象数量达到一定是触发的垃圾收集GC_FOR_MALLOC:在内存已满的情况下分配内存,此时系统会暂停程序并回收内存GC_HPROF_DUM

2016-10-13 15:50:09 621

转载 Android 查看内存使用情况

再看开发过程中,经常要通过内存的使用量来优化程序。查看应用程序的命令:adb shell procrank显示如下:  PID      Vss      Rss      Pss      Uss  cmdline  190   79560K   74736K   49624K   43604K  system_server14335   55776K   55740K  

2016-10-13 15:46:53 580

转载 C# Enum,Int,String的互相转换

C# Enum,Int,String的互相转换    Enum为枚举提供基类,其基础类型可以是除 Char 外的任何整型。如果没有显式声明基础类型,则使用 Int32。编程语言通常提供语法来声明由一组已命名的常数和它们的值组成的枚举。    注意:枚举类型的基类型是除 Char 外的任何整型,所以枚举类型的值是整型值。    Enum 提供一些实用的静态方法:    (1)比较枚举

2016-09-22 14:45:30 331

转载 Lua脚本语言中字符匹配模式详解

你还可以在模式串中使用字符类。字符类指可以匹配一个特定字符集合内任何字符的模式项。比如,字符类 %d匹配任意数字. 所以你可以使用模式串'%d%d/%d%d/%d%d%d%d'搜索dd/mm/yyyy 格式的日期:    s = "Deadline is 30/05/1999,firm"   date ="%d%d/%d%d/%d%d%d%d"   print(string.sub

2016-09-20 19:59:25 2186

转载 SVN:修改已提交日志信息

有时候需要对之前版本提交的错误的日志信息进行修改或者进行补充描述:1.在Windows下变更比如在windows下使用TortoiseSVN客户端,选中代码目录,点击右键,选择,在出来的日志列表对话框中,选择某个提交版本,再点击右键,选择,如下图所示:由于缺省情况下为安全起见Subversion不允许开发人员修改已提交reversion的日志信息,这样会报错误,提示不能修改

2016-09-19 14:56:31 1922 1

转载 利用svn log命令实现的资源版本更新

无论页游或是手游都需要经常进行更新,而每一次更新几乎都是一部血泪吏。这里重点介绍一下前端资源打包的简化操作。目前2D手游主流都采用了cocos2d-x 绑lua的做法,因为lua相当于一种资源可以进行动态更新。只要底部的c++代码不需要改动,几乎整个游戏都可以动态更新掉,而更新这个动作如果交由手工操作,很容易出问题而且效率极低。有没有比较好的解决方案呢?先理一下思路,更新无外乎找到需要更新的文

2016-09-19 14:52:00 403

转载 svn 回退/更新/取消至某个版本命令详解

1. 取消Add/Delete取消文件svn revert 文件名取消目录svn revert --depth=infinity 目录名2. 回退版本方法1: 用svn merge1) 先 svn up,保证更新到最新的版本,如20;2) 然后用 svn log ,查看历史修改,找出要恢复的版本,如10 。如果想要更详细的了解情况,可以使用svn diff -r 1

2016-09-19 14:49:29 738

转载 SVN的子命令SVN merge详解,应用两组源文件的差别到工作拷贝路径

本节介绍SVN子命令SVN merge的使用问题,即子命令SVN merge—应用两组源文件的差别到工作拷贝路径,SVN的拷贝是一种比较有技巧的简单问题,大家在平时的使用过程中有更好的方式希望能够提供出来,供我们大家共同交流讨论。下面是具体的介绍。名称子命令SVN merge—应用两组源文件的差别到工作拷贝路径。概要svnmerge[-cM|-rN:M]SOURCE[@REV][W

2016-09-19 14:48:44 700

转载 svn log 命令不能显示全部log的解决方法

环境:Linux,命令:svn某一次在用svn提交了代码之后,想用svn log命令列出刚提交的代码文件列表,先执行以下命令列出最近3条提交信息以找出刚提交的revision号:svn log -l 3 没想到输出中并未包含刚提交的那一个revision:--------------------------------------------------------

2016-09-19 14:46:20 6058

转载 SVN如何查看修改的文件记录

主要是有四个命令,svn log用来展示svn 的版本作者、日期、路径等等;svn diff,用来显示特定修改的行级详细信息;svn cat,取得在特定版本的某文件显示在当前屏幕;svn  list,显示一个目录或某一版本存在的文件。比较常用的是svn diff命令。它可以比较不同版本之间、svn版本和本地版本库之间,以及检查本地修改的作用。svn diff; #什么都不加,会坚持本地代码

2016-09-19 14:43:34 10541

转载 SVN使用log,list,cat,diff命令查看特定文件版本信息

svn log          展示给你主要信息:每个版本附加在版本上的作者与日期信息和所有路径修改。svn diff          显示特定修改的行级详细信息。svn cat          取得在特定版本的某一个文件显示在当前屏幕。svn list          显示一个目录在某一版本存在的文件。找出一个文件或目录的历史信息,使用svn log命令,svn lo

2016-09-19 14:40:57 10439

转载 解决NGUI图片拼接中间出现1像素接缝的问题

如下图所示美术给我两张255X255的图片让我来拼接。第二张图的X坐标明明是X偏移255的为什么中间有一像素呢?此时如果你不加思索的就把X偏移改成254。仔细看看下面这个位置明显图片没有被拼接上?如果两张图片都是纯色的话可能这样可以被拼上,但是这是不解决核心问题的。。如果你看NGUI的源码你会发现NGUI会自动把奇数宽高的图片补起成偶数的宽高

2016-09-18 21:08:24 2227

转载 android错误:Installation error: INSTALL_FAILED_VERSION_DOWNGRADE

情况1:      Installation error: INSTALL_FAILED_VERSION_DOWNGRADE,安装过一个开发的APP之后,需要把应用程序的安装包中的包文件目录修改一下,然后就出现了这个问题了,以前也出现过没有太注意,仔细查了一下资料,按其字面意思就是安装版本太低了。所以就想到了android:versionCode="1"    android:versio

2016-09-18 11:07:12 334

转载 AssetPostprocessor 资源处理器

ssetPostprocessor lets you hook into the import pipeline and run scripts prior or after importing assets.AssetPostprocessor让你钩进导入管线,在运行脚本之前或导入资源之后。Note: This is an editor class. To use it you have

2016-09-12 19:23:22 1249

转载 SVN---svn.exe找不到

在svn目录下找不到svn.exe原因是有个叫  command line client tools 选项没勾选看图原文地址:http://blog.csdn.net/wuqilianga/article/details/51135451

2016-09-09 14:32:48 4711

转载 Shell 字符串比较

Shell 中整数比较方法及字符串的比较方法,如等于,不等于,大于,大于等于,小于,等等。二元比较操作符,比较变量或者比较数字.注意数字与字符串的区别.--------------------------------------------------------------------------------整数比较 -eq       等于,如:if [ "$a" -eq

2016-09-07 17:18:13 637

转载 Linux 下curl模拟Http 的get or post请求

一、get请求curl "http://www.baidu.com"  如果这里的URL指向的是一个文件或者一幅图都可以直接下载到本地curl -i "http://www.baidu.com"  显示全部信息curl -l "http://www.baidu.com" 只显示头部信息curl -v "http://www.baidu.com" 显示get请求全过程

2016-09-07 14:59:02 695

转载 C# 程序员最常犯的 10 个错误

关于C#C#是达成微软公共语言运行库(CLR)的少数语言中的一种。达成CLR的语言可以受益于其带来的特性,如跨语言集成、异常处理、安全性增强、部件组合的简易模型以及调试和分析服务。作为现代的CLR语言,C#是应用最为广泛的,其应用场景针对Windows桌面、移动手机以及服务器环境等复杂、专业的开发项目。C#是种面向对象的强类型语言。C#在编译和运行时都有的强类型检查,使在大多数典型的编

2016-09-02 20:30:16 2125

转载 Dictionary通过下标获取key和value

Dictionary dic = new Dictionary(); Dictionary.Enumerator en = dic.GetEnumerator(); for (int i = 0; i < dic.Count; i++) { if (en.MoveNext())

2016-08-31 20:34:07 11816

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除