- 博客(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
7382
2
原创 JAVA枚举类状态机 与 Java枚举策略模式
写的比较晚了,贴代码供参考1、普通的enum方法设计如下,缺点是不方便维护,因为是switch语句,容易在扩展的时候忘了改相关的代码。但如果你的代码千年不变,这个缺点就不明显。package enumclass;public enum PayrollBySwitch { Monday, Tuesday, Wendsday, Thursday, Friday, Sat
2017-06-16 00:02:02
3821
原创 装饰模式与代理模式的区别
总结:共同点:都可以为一个对象增加操作。差异点:装饰模式:被改造的对象是外部传入,即一个对象已经被完整生成了。本质上,这是一个加工过程。这就像加工外贸,装饰对象是明摆着要加工原材料,你把原材料导入到装饰对象就行了。代理模式:被改造的对象,是代理对象内部创建的,即外部感知不到被改造对象,对外部来说,只有代理类存在。这类似股票市场,我们不直接向企业买
2017-06-04 09:45:45
830
原创 Open JDK源码下载地址
http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/file/5b86f66575b7
2017-05-24 15:57:51
13052
原创 【CountDownLatch】死循环检测模板/多线程重复测试模板
意义:CountDownLatch的一个作用是检测死循环,因为死循环不容易复现,需要把一个程序执行多次。有的同学会用脚本循环执行,如果没有linux环境,还得装环境,有点麻烦。所以想到直接用Java实现重复执行一段代码的功能。CountDownLatch在本例子的作用是,每次Loop都等线程执行完了,再执行下一次loop,如果某一次出现死循环,则countDown()不会被
2017-05-23 23:36:00
1270
原创 【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
4271
原创 【CountDownLatch实例】主线程等待其它线程执行完毕
本文章主要体现2点:1 主线程等待子线程执行完毕。通过CountDownLatch实现2 演示共享的HashMap的put操作在多个线程中,如何同步。 这里主要是对比了synchronized块和Collections类的装饰功能。======================================如下面代码,主线程main,等待现场Thread1和2执行
2017-05-23 23:16:27
610
原创 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
4798
1
转载 【AQS框架扩展】Oracle官方教程之Fork/Join
Oracle官方教程之Fork/Join原文链接,译文链接,译者:Zach,校对:郑旭东fork/join框架是ExecutorService接口的一种具体实现,目的是为了帮助你更好地利用多处理器带来的好处。它是为那些能够被递归地拆解成子任务的工作类型量身设计的。其目的在于能够使用所有可用的运算能力来提升你的应用的性能。类似于ExecutorService接口的其他实现
2017-05-14 19:43:07
313
1
原创 IOError: [Errno 28] No space left on device
表面上这是磁盘满了。但我删了很多文件,发现没效果。显示某个路径used为100%。其实,这是因为有些线程有bug,开辟了个无限大的文件,撑爆了空间。用下面命令可以看到哪个PID占最多资源lsof +L1然后用下面命令干掉。kill -9 PID一切恢复正常。
2017-05-09 15:00:50
18832
1
原创 【多线程研究专题三】【FutureTask与Callable的本质】
吐槽:以前看了好多文章和书籍讲FutureTask,讲的很细,但不得要领,还是会忘。绝知此事要躬行,还是得自己亲自分析下源码。1、FutureTask本质上是Runnable和Callable的实现类,就是一个任务类,主函数也是run()。2、FutureTask实现了异步任务,怎么实现的?是因为Callable? 不是。Callable.call()与Runnabl
2017-05-07 23:39:54
535
1
原创 【多线程研究专题二】【Condtion使用实例】ArrayBlockingQueue解析
在研究Condition时,发现它的API提供了BoudedBuffer实现,并指出ArrayBlockingQueue就是一个BoudedBuffer的高阶实现。因此深入研究了下BoudedBuffer,其核心思想是:1. 使用一个循环数组2. 定义一个Count,作为put和take的次数差值约束,并使得put次数-take次数的差值为 0 - Capacity。达到边界的
2017-05-07 21:48:23
358
原创 【多线程研究专题一】【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
571
原创 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
816
原创 Keil v4函数列表显示
如上图,可以打开函数列表,但是它默认显示所有文件,之前没有留意,觉得挺麻烦,一直用source insight,后来想了想,不可能这么不人性化把,右键看了下,把scan project files勾选去掉,就只剩下你打开的文件的函数列表了,这就方便很多了。
2015-05-30 19:40:57
5037
1
原创 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
16286
原创 VNC remote desktop viewer
Linux10.04版本的Applications->internet->Remote Desktop Viewer可以实现与其它linux系统的远程可视化控制。新版本好像没有这个工具了,找不到。使用方法:1.利用ssh登录远程服务器norton@norton-laptop:~$ ssh 192.168.0.3norton@192.168.0.3's password:
2014-12-26 10:14:12
1804
原创 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
674
原创 指针的大小到底是由谁决定?是多少?
小结:貌似8位单片机可以有16位寻址长度。之前看到有些8位机可以跑16位寻址,一直不解,所以找了下资料。参考了下文,如果寻址地址是16,可能编译器也是16位的,这样8位机的指针其实也可以是16位长度的。另外,据说指针长度是和计算机字长有关的。一般说8位机的字长也是8位,会不会字长也是对应着寻址长度呢?这些疑问只好以后碰到datasheet再考虑了。下文转自 http://blog.
2014-12-22 17:36:51
1332
转载 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
2698
原创 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
852
原创 SVN代码管理经验
从网上下载了SVN代码,但没有权限commit,怎么办?1.先把下载的文件夹,用Export选项,导出来,导出的文件时一个普通的文件夹(没有任何SVN功能,会把“.”开头的文件都删掉)。2.新建一个文件夹,“create repository here”,做一个svn库,后续会以这个库为准,commit到这个本地库。右键,选择“repo-browser”,可以看到这个库有三个路径,trun
2014-11-10 17:56:33
726
原创 SVN管理经验
从网上下载了SVN代码,但没有权限commit,怎么办?1.先把下载的文件夹,用Export选项,导出来,导出的文件时一个普通的文件夹(没有任何SVN功能,会把“.”开头的文件都删掉)。2.新建一个文件夹,“create repository here”,做一个svn库,后续会以这个库为准,commit到这个本地库。右键,选择“repo-browser”,可以看到这个库有三个路径,trun
2014-11-10 17:56:32
583
原创 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
636
转载 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
1462
原创 修改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
3173
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
1705
转载 三行代码获取特定广播的所有接收者
作 者: isno时 间: 2012-09-26,15:20:49链 接: http://bbs.pediy.com/showthread.php?t=156436Android中收到短信等事件都是通过广播发送给应用程序的,360手机卫士等程序都是通过注册高优先级的BroadcastReceiver来实现短信防火墙等功能。对于我们来说很想知道系统中都有哪些程序注册了Broa
2014-11-05 15:56:47
873
转载 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
836
原创 cocos2d: fullPathForFilename:
cocos2d: fullPathForFilename: No file found at textures/main.plist/HelloWorld.png. Possible missing file.
2014-11-02 19:36:39
2849
原创 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
3068
原创 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
1461
原创 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
996
原创 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
1471
原创 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
986
原创 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
12480
2
原创 For input string: ":"
java.lang.NumberFormatException: For input string: ":"这个问题,我一开始有一位
2014-10-23 16:02:20
12809
转载 基于蚁群算法求解求解TSP问题(JAVA)
转自:http://blog.csdn.net/wangqiuyun/article/details/8878298一、TSP问题TSP问题(Travelling Salesman Problem)即旅行商问题,又译为旅行推销员问题、货郎担问题,是数学领域中著名问题之一。假设有一个旅行商人要拜访n个城市,他必须选择所要走的路径,路径的限制是每个城市只能拜访一次,而且最后要回到原来出
2014-10-23 14:34:54
1050
C语言打印二叉树 重构版
2014-03-26
TinyHttpd源码
2013-09-01
GNU C Library Manual
2013-08-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人