自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Norton的专栏

修炼内功,吾志在于学

  • 博客(433)
  • 资源 (22)
  • 收藏
  • 关注

原创 Python遍历文件夹 处理json文件

有两种做法:os.walk()、pathlib库,个人感觉pathlib库的path.glob用来匹配文件比较简单。下面是第二种做法的实例(第一种做法百度有很多文章):from pathlib import Pathimport jsonanalysis_root_dir = "D:\\analysis_data\json_file"store_result="D:

2017-08-12 17:05:27 7686 2

原创 JAVA枚举类状态机 与 Java枚举策略模式

写的比较晚了,贴代码供参考1、普通的enum方法设计如下,缺点是不方便维护,因为是switch语句,容易在扩展的时候忘了改相关的代码。但如果你的代码千年不变,这个缺点就不明显。package enumclass;public enum PayrollBySwitch { Monday, Tuesday, Wendsday, Thursday, Friday, Sat

2017-06-16 00:02:02 4014

原创 装饰模式与代理模式的区别

总结:共同点:都可以为一个对象增加操作。差异点:装饰模式:被改造的对象是外部传入,即一个对象已经被完整生成了。本质上,这是一个加工过程。这就像加工外贸,装饰对象是明摆着要加工原材料,你把原材料导入到装饰对象就行了。代理模式:被改造的对象,是代理对象内部创建的,即外部感知不到被改造对象,对外部来说,只有代理类存在。这类似股票市场,我们不直接向企业买

2017-06-04 09:45:45 986

原创 Open JDK源码下载地址

http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/file/5b86f66575b7

2017-05-24 15:57:51 13188

原创 【CountDownLatch】死循环检测模板/多线程重复测试模板

意义:CountDownLatch的一个作用是检测死循环,因为死循环不容易复现,需要把一个程序执行多次。有的同学会用脚本循环执行,如果没有linux环境,还得装环境,有点麻烦。所以想到直接用Java实现重复执行一段代码的功能。CountDownLatch在本例子的作用是,每次Loop都等线程执行完了,再执行下一次loop,如果某一次出现死循环,则countDown()不会被

2017-05-23 23:36:00 1374

原创 【CountDownLatch】实现多个线程同时启动

要点:1、 CountDownLatch的计数是1.2、await发生在多个子线程,主线程负责countDown,相当于管理多个线程的同步时机。package multithread;import java.util.HashMap;import java.util.Iterator;import java.util.concurrent.CountDown

2017-05-23 23:22:33 4359

原创 【CountDownLatch实例】主线程等待其它线程执行完毕

本文章主要体现2点:1 主线程等待子线程执行完毕。通过CountDownLatch实现2 演示共享的HashMap的put操作在多个线程中,如何同步。    这里主要是对比了synchronized块和Collections类的装饰功能。======================================如下面代码,主线程main,等待现场Thread1和2执行

2017-05-23 23:16:27 662

原创 HashMap的尾部遍历问题--Tail Traversing

参考:http://stackoverflow.com/questions/22890967/java-hashmap-tail-traversing在看网上HashMap的resize()设计时,提到尾部遍历。JDK1.7的HashMap在实现resize()时,新table[]的列表采用LIFO方式,即队头插入。这样做的目的是:避免尾部遍历。参考stackoverf

2017-05-21 22:59:03 4872 1

转载 【AQS框架扩展】Oracle官方教程之Fork/Join

Oracle官方教程之Fork/Join原文链接,译文链接,译者:Zach,校对:郑旭东fork/join框架是ExecutorService接口的一种具体实现,目的是为了帮助你更好地利用多处理器带来的好处。它是为那些能够被递归地拆解成子任务的工作类型量身设计的。其目的在于能够使用所有可用的运算能力来提升你的应用的性能。类似于ExecutorService接口的其他实现

2017-05-14 19:43:07 361 1

原创 IOError: [Errno 28] No space left on device

表面上这是磁盘满了。但我删了很多文件,发现没效果。显示某个路径used为100%。其实,这是因为有些线程有bug,开辟了个无限大的文件,撑爆了空间。用下面命令可以看到哪个PID占最多资源lsof +L1然后用下面命令干掉。kill -9 PID一切恢复正常。

2017-05-09 15:00:50 19272 1

原创 Eclipse 线程堆栈分析实例(线程dump/堆栈dump)call stack

2017-05-08 00:35:57 2784

原创 【多线程研究专题三】【FutureTask与Callable的本质】

吐槽:以前看了好多文章和书籍讲FutureTask,讲的很细,但不得要领,还是会忘。绝知此事要躬行,还是得自己亲自分析下源码。1、FutureTask本质上是Runnable和Callable的实现类,就是一个任务类,主函数也是run()。2、FutureTask实现了异步任务,怎么实现的?是因为Callable?      不是。Callable.call()与Runnabl

2017-05-07 23:39:54 602 1

原创 【多线程研究专题二】【Condtion使用实例】ArrayBlockingQueue解析

在研究Condition时,发现它的API提供了BoudedBuffer实现,并指出ArrayBlockingQueue就是一个BoudedBuffer的高阶实现。因此深入研究了下BoudedBuffer,其核心思想是:1. 使用一个循环数组2. 定义一个Count,作为put和take的次数差值约束,并使得put次数-take次数的差值为 0 - Capacity。达到边界的

2017-05-07 21:48:23 408

原创 【多线程研究专题一】【Condition使用实例】Conditon与Lock的关系

摘要:Condition和Lock是一对组合,相当于Synchronize和Object.wait()/Object.notify()的关系。Lock的方法是帮助线程获取锁,Condition的方法是帮助线程释放锁。参考API Doc:http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/locks/Conditio

2017-05-07 17:57:18 662

原创 Java CSV文件解析研究

网上对CSV文件解析的资料比较零散,整理如下:1/Common CSV。权威网站,Apache整合的csv技术,我觉得应该优先学这个,通用性应该会更好。http://commons.apache.org/proper/commons-csv/2/  网友推荐使用的java csv库,大小只有14k,看起来很简单,可以考虑http://www.cnblogs.

2016-09-15 09:32:10 888

原创 Keil v4函数列表显示

如上图,可以打开函数列表,但是它默认显示所有文件,之前没有留意,觉得挺麻烦,一直用source insight,后来想了想,不可能这么不人性化把,右键看了下,把scan project files勾选去掉,就只剩下你打开的文件的函数列表了,这就方便很多了。

2015-05-30 19:40:57 6272 2

原创 Repo同步错误 OSError: [Errno 28] No space left on device

Repo同步错误 OSError: [Errno 28] No space left on deviceRepo同步时候报这个错误OSError: [Errno 28] No space left on device查看所有磁盘的空间norton@sanshinGitServer:~$ df -hdf: `/home/norton/.gvfs': Transpo

2015-02-02 09:42:55 16461

原创 VNC remote desktop viewer

Linux10.04版本的Applications->internet->Remote Desktop Viewer可以实现与其它linux系统的远程可视化控制。新版本好像没有这个工具了,找不到。使用方法:1.利用ssh登录远程服务器norton@norton-laptop:~$ ssh [email protected]'s password: 

2014-12-26 10:14:12 1945

原创 IntelJ IDEA加入广告后报错

Error:Android Dex: [flamingo-android] Unable to execute DXError:Android Dex: [flamingo-android] com.android.dex.DexException: Multiple dex files define Lcom/qq/e/a/a;参考了两篇文章http://blog.csd

2014-12-25 16:53:52 726

原创 指针的大小到底是由谁决定?是多少?

小结:貌似8位单片机可以有16位寻址长度。之前看到有些8位机可以跑16位寻址,一直不解,所以找了下资料。参考了下文,如果寻址地址是16,可能编译器也是16位的,这样8位机的指针其实也可以是16位长度的。另外,据说指针长度是和计算机字长有关的。一般说8位机的字长也是8位,会不会字长也是对应着寻址长度呢?这些疑问只好以后碰到datasheet再考虑了。下文转自 http://blog.

2014-12-22 17:36:51 1450

转载 Micro SD卡(TF卡)spi

上一篇文章已经介绍了Micro SD卡SPI模式的实现方法,这里给出自己写的基于nios ii的Micro SD卡读写程序(IO口模拟spi)。    硬件设计就不多说了,主要是添加4的1为PIO口来模拟SPI的CS、SCLK、MISO和MOSI。    以下是代码:    头文件SD_spi_solution.h[cpp] view plain

2014-12-18 12:36:01 2804

原创 CocosEditor-java 切换场景后触摸失灵

//listenerplayButton.addTouchEventListener(new Widget.TouchEventListener() { @Override public void onTouch(Ref ref, int action) { System.out.println("action = "+action); if(a

2014-11-23 10:42:14 912

原创 SVN代码管理经验

从网上下载了SVN代码,但没有权限commit,怎么办?1.先把下载的文件夹,用Export选项,导出来,导出的文件时一个普通的文件夹(没有任何SVN功能,会把“.”开头的文件都删掉)。2.新建一个文件夹,“create repository here”,做一个svn库,后续会以这个库为准,commit到这个本地库。右键,选择“repo-browser”,可以看到这个库有三个路径,trun

2014-11-10 17:56:33 750

原创 SVN管理经验

从网上下载了SVN代码,但没有权限commit,怎么办?1.先把下载的文件夹,用Export选项,导出来,导出的文件时一个普通的文件夹(没有任何SVN功能,会把“.”开头的文件都删掉)。2.新建一个文件夹,“create repository here”,做一个svn库,后续会以这个库为准,commit到这个本地库。右键,选择“repo-browser”,可以看到这个库有三个路径,trun

2014-11-10 17:56:32 630

原创 CocosEditor-java ListView显示

调了好久,终于有显示了/* ImageView image = ImageView.create(); image.setAnchorPoint(0f,0.5f); image.loadTexture("textures/HelloWorld.png"); image.setScale(0.3f); listVi

2014-11-09 22:19:32 670

转载 android SDK修改默认壁纸

其实很简单 只要在frameworks\base\core\res\res\values目录找到Config.xml文件,最后一行有定义:null 将其修改为对应的live wallpaper的启动component即可,如要把默认壁纸设置为2.1自带的gallery,这样写即可:com.android.wallpaper/com.android.wallpap

2014-11-07 16:31:37 1537

原创 RK Linux工具烧录错误分析

Rockusb>UFNo found firmware item from config!

2014-11-07 09:38:59 6878 2

原创 修改Android系统的build.prop

root@rk3066:/system # rm testrm testrm failed for test, Read-only file system255|root@rk3066:/system # mount -o remount,rw /systemmount -o remount,rw /systemroot@rk3066:/system # rm testrm

2014-11-06 10:41:34 3253 1

转载 Read-only file system

mount: Permission deniedAndroid-出现Read-only file system的解决方法输入命令: 代码如下复制代码mount -o remount rw /system(每次都要执行一次)有的朋友说是是“/”的问题,命令改为:adb push AlarmCl

2014-11-05 17:35:15 1748

转载 三行代码获取特定广播的所有接收者

作 者: isno时 间: 2012-09-26,15:20:49链 接: http://bbs.pediy.com/showthread.php?t=156436Android中收到短信等事件都是通过广播发送给应用程序的,360手机卫士等程序都是通过注册高优先级的BroadcastReceiver来实现短信防火墙等功能。对于我们来说很想知道系统中都有哪些程序注册了Broa

2014-11-05 15:56:47 919

转载 android build.prop解析

android系统属性build.prop,所在位置:out\target\product\kylin\system\build.prop用数据线连接android 设置,进入调试模式 (在android的设置--应用程序--开发--USB调试)开始--运行--CMDC:\Documents and Settings\Administrator>adb shell#

2014-11-04 15:43:05 868

原创 cocos2d: fullPathForFilename:

cocos2d: fullPathForFilename: No file found at textures/main.plist/HelloWorld.png. Possible missing file.

2014-11-02 19:36:39 2947

原创 Fatal signal 11 (SIGSEGV) 错误

5637-5637/org.cce.game.hello A/libc﹕ Fatal signal 11 (SIGSEGV) at 0x00000088 (code=1), thread 5637 (.cce.game.hello)

2014-11-02 17:46:56 3234

原创 CocosEditor-java 之PolygonShape错误

Aborting due to Chipmunk error: Polygon is concave or has a reversed winding. Consider using cpConvexHull() or CP_CONVEX_HULL().Failed condition: cpPolyValidate(verts, numVerts)Source:d:\work\sour

2014-11-01 12:11:03 1526

原创 CocosEditor-java onContactBegin无反应

private void setBirdContact() { PhysicsBody body = playSprite.getPhysicsBody(); System.out.println("playSprite.getCategoryBitmask = "+body.getCategoryBitmask()); System.out.println("playS

2014-10-30 23:22:34 1911

原创 Android SDK的repo库编译错误

compilation terminated.make: *** [out/target/product/rk3188/obj/STATIC_LIBRARIES/crypto_crypto_gyp_intermediates/crypto/openssl_util.o] Error 1make: *** Waiting for unfinished jobs....

2014-10-27 16:02:05 1558

原创 CocosEditor-java

Can't find dll path in CDK_HOME or java.library.pathLoading 1 org.cce.game.hello.Main ... Loading e 4686840 applicationDidFinishLaunchingReady for GLSLReady for OpenGL 2.0width  480 height

2014-10-26 22:17:17 1013

原创 not a valid SHA1

repoTraceback (most recent call last):  File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner    self.run()  File "/usr/lib/python2.7/threading.py", line 504, in run    se

2014-10-24 16:17:30 13291 2

原创 For input string: ":"

java.lang.NumberFormatException:  For input string: ":"这个问题,我一开始有一位

2014-10-23 16:02:20 13016

转载 基于蚁群算法求解求解TSP问题(JAVA)

转自:http://blog.csdn.net/wangqiuyun/article/details/8878298一、TSP问题TSP问题(Travelling Salesman Problem)即旅行商问题,又译为旅行推销员问题、货郎担问题,是数学领域中著名问题之一。假设有一个旅行商人要拜访n个城市,他必须选择所要走的路径,路径的限制是每个城市只能拜访一次,而且最后要回到原来出

2014-10-23 14:34:54 1111

26个精心整理的工具类

Java工具类 26个精心整理的工具类 26个精心整理的工具类 26个精心整理的工具类26个精心整理的工具类26个精心整理的工具类

2017-09-16

java枚举状态机

java枚举状态机

2017-06-15

SDN 与 NFV 知识梳理

SDN 与 NFV 知识梳理,个人使用,供参考

2016-10-06

RTL8211E(G)-xx-CG_DataSheet_1.3.pdf

RTL8211E(G)-xx-CG_DataSheet_1.3.pdf

2015-08-11

Shift JIS编码表

Shift JIS编码表,很容易找到,方便懒人

2015-06-04

mini2440之U-boot移植详细手册-20110908.pdf

mini2440之U-boot移植详细手册-20110908.pdf

2014-07-10

ARM中断学习_讲的十分到位

讲的挺好,分享下。对ARM是怎么样调用中断服务程序,把很多中断调用的中断地址给了很完善的讲解。

2014-05-12

51系列单片机的硬件结构-机器周期--1

这个文档挺好,能学到机器时钟、状态时钟的区别,网上搜比较零散

2014-05-09

PLL锁相环原理/设计与应用详解

网上搜了挺多信息,这个ppt还是讲的比较系统的。

2014-05-05

红黑树源码

第一次从无到有写代码,从二叉树到红黑树,到打印树的设计,写了将近2个星期。

2014-04-09

C语言打印二叉树 重构版

之前发布的单独c文件,太大,不可重用,所以我把它重构了,打散成.h和.c文件,加入了Makefile进行编译。 用tar命令解压后,就可以make 运行了。详情请看readme,之前发布的单独文件也在里面

2014-03-26

C语言打印二叉树

打印二叉树,高度为4内的,可完美打印二叉树

2014-03-25

红黑树C语言代码

http://blog.chinaunix.net/uid-24774106-id-3440620.html 是这个作者的,里面放了我写的二叉树的源码

2014-03-19

二叉树构建、排序、统计高度和数量

调试了下二叉树的c语言代码,可以运行的。

2014-03-17

MySQL的JDBC驱动JAR包

MySQL的JAR包下载,官网搜的。 解压后可以看到jar在根目录。

2013-09-14

TinyHttpd源码

tinyhttpd是一个超轻量型Http Server,使用C语言开发,全部代码只有502行(包括注释),附带一个简单的Client,可以通过阅读这段代码理解一个 Http Server 的本质。

2013-09-01

Linux Socket函数调用的基础实例

是一些基础代码,实现了Server端向Client端发送消息的功能

2013-08-29

GNU C Library Manual

glibc说明文档 The C language provides no built-in facilities for performing such common operations as input/output, memory management, string manipulation, and the like. Instead, these fa- cilities are defined in a standard library, which you compile and link with your programs. The GNU C Library, described in this document, defines all of the library functions that are specified by the ISO C standard, as well as additional features specific to POSIX and other derivatives of the Unix operating system, and extensions specific to GNU systems. The purpose of this manual is to tell you how to use the facilities of the GNU C Library. We have mentioned which features belong to which standards to help you identify things that are potentially non-portable to other systems. But the emphasis in this manual is not on strict portability.

2013-08-17

cocos2d-x 实现3种数据加密方法的源码

cocos2d-x 实现3种数据加密MD5/SHA1/BASE64源码

2013-06-24

Box2D教程-英文

搜索了下,发现很多地方要收积分,放你里是为了方便一些人的下载

2013-06-12

Gallery 类跳跃动画

切换图片时,被选中图片加上动画效果,看起来像在跳动,比较活跃可爱的感觉。

2012-11-22

Gallery放大,跳动效果

让gallery滑动的效果更活泼,做了一些人性化的处理。

2012-11-22

空空如也

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

TA关注的人

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