摘要: String.intern() 的作用是把字符串放入常量池 如果字符串存在于常量池,直接返回地址即可 如果字符串不在常量池: 在jdk7 以下版本是先把字符串复制到常量池区然后返回字符串在该区的地址 在jdk7及以上版本中则是直接把字符串的地址复制到常量池 之所以要这么做原因是 jdk7及以后的版本 阅读全文
posted @ 2020-11-05 15:57 dint 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 先列出我的测试代码: 1 public static Object loc=new Object(); 2 3 public static void main(String[] args) throws Exception{ 4 5 Thread t1=new Thread(new Runnable 阅读全文
posted @ 2020-11-04 17:14 dint 阅读(152) 评论(0) 推荐(0) 编辑
摘要: HashMap是java最经典的数据结构之一,抽空研究了下 顺便做个笔记: HashMap 存储 采用的是 数组+链表+红黑树的存储模式, 1.hash无冲突的时候,node直接放入数组 index=hash%数组长度 2.hash 有冲突 采用链表结构存储 元素之间用next变量连接 3.hash 阅读全文
posted @ 2020-11-02 10:15 dint 阅读(113) 评论(0) 推荐(0) 编辑
摘要: foreach 遍历 ArrayList 的时候 用ArrayList.remove 做删除操作会异常的 直接用 Iterator 遍历 Iterator.remove 是不会异常的 众所周知,foreach 本质上就是 Iterator 的语法糖 那么为什么会出现这种情况呢? ArrayList 阅读全文
posted @ 2020-11-01 13:11 dint 阅读(642) 评论(0) 推荐(1) 编辑
摘要: java项目中使用log4j记录日志几乎成了标配, 最近一个项目中出了个问题 现象是这样的: 不连vpn程序一切正常,连上VPN启动程序 直接异常退出, 错误日志直接指向了 log4j 库 org.apache.logging.log4j.core.util.UuidUtil.clinit 就是说在 阅读全文
posted @ 2020-10-31 21:59 dint 阅读(942) 评论(0) 推荐(0) 编辑
摘要: 0、前言 本文主要对几种常见Java序列化方式进行实现。包括Java原生以流的方法进行的序列化、Json序列化、FastJson序列化、Protobuff序列化。 1、Java原生序列化 Java原生序列化方法即通过Java原生流(InputStream和OutputStream之间的转化)的方式进 阅读全文
posted @ 2020-10-30 21:58 dint 阅读(340) 评论(0) 推荐(0) 编辑
摘要: ffmpeg 是一套强大的开源多媒体库 一般都是用 c/c++ 调用, 抽空研究了一下该库的最新版 ,把部分api 翻译成了dephi版的 记录一下 地址 ffmpegvcl.zip 阅读全文
posted @ 2020-10-30 11:26 dint 阅读(757) 评论(0) 推荐(1) 编辑
摘要: 研究了下android下的 handler message 实现原理: new handler() 的时候 从ThreadLocal里面 获取当前线程下的 Looper实例下的 MessageQueue 的引用 保存在 handler.mQueue属性里面 handler发送消息本质就是向此集合写值 阅读全文
posted @ 2020-10-29 17:13 dint 阅读(132) 评论(0) 推荐(0) 编辑
摘要: spring中的bean最常用的 singleton 模式 如果要在springmvc Controller 中获取 HttpServletRequest ,HttpServletResponse 怎么办? 1.在接口函数中以参数传入 类似HttpServlet 这种方式获得的是真实的request 阅读全文
posted @ 2020-10-29 16:10 dint 阅读(2330) 评论(0) 推荐(0) 编辑
摘要: DxPackNet 对视频的压缩和解压也提供了很好的支持,且系统不需要装第三方解码器哦~ 主要用到了 IxVideoEncoder 视频编码器 和 IxVideoDecoder 两个接口 这里只做简单的组件功能使用介绍,实际应用中可能涉及到 UDP分包,包顺序控制, 音视频传输协议制定, P2P,这 阅读全文
posted @ 2018-03-02 15:36 dint 阅读(1179) 评论(0) 推荐(0) 编辑
摘要: 捕获到了音视频后要保存到本地文件,这是很常见的应用场景,DxPackNet保存视频文件也比较简单 用 IAviStreamWriter avi文件写入流即可 1.初始化相关设备,设定好数据捕获的回调函数 2.创建avi写入流 打开设备 3.在回调中写入音/视频 数据 阅读全文
posted @ 2018-02-06 15:44 dint 阅读(541) 评论(0) 推荐(0) 编辑
摘要: 用DxpackNet捕捉音频其实很简单 1.初始化控件 2.打开设备 3.通过回调函数获得音频数据,写音频文件,或者输出到其他平台 4.如果是写文件,录音完成后做收尾工作 加上wav格式的头 不然文件不被其他播放器识别 源码下载 AudioRecord.zip 阅读全文
posted @ 2018-02-05 18:37 dint 阅读(470) 评论(0) 推荐(0) 编辑
摘要: 在上一节的基础上 打开了摄像头后: 1.视频截图 调用 CatchBmp 方法即可获取当前帧的 bmp 图像, 2.帧捕获 给设备类型加上捕获帧数据的回调函数,即可不断的获取所有输出的帧数据 下面是回调处理代码 ,在回调中通过 BmpFromBuffer 方法将帧数据还原成了bmp图片 截图源代码 阅读全文
posted @ 2018-02-05 18:03 dint 阅读(446) 评论(0) 推荐(0) 编辑
摘要: 好久没写博客了 ,这个系列将给大家介绍.net下一个非常好用的视频控件 DxPackNet, 用这个控件大家可以轻松开发出 视频会议,视频监控,远程桌面,远程教学,远程白板,视频直播,视频聊天 等和网络多媒体相关的功能。 具体内容准备分为下面几节,陆续的会贴上来: 1.打开摄像头 2.视频截图和捕捉 阅读全文
posted @ 2018-02-05 17:59 dint 阅读(480) 评论(0) 推荐(0) 编辑
摘要: 自主研发的一款棋牌软件(实现了标准中国麻将的各种功能),IOS版没时间搞,跨平台部分都抽象出来了 支持android2.3+, ios6+ 系统,自适应各种分辨率的移动设备 采用的 xamarin 移动端跨平台技术 纯C#语言实现,游戏引擎完全自己编写, 有兴趣的小伙伴可以解压安装包 ILSpy 研 阅读全文
posted @ 2017-08-13 19:56 dint 阅读(358) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2017-05-20 15:40 dint 阅读(269) 评论(0) 推荐(0) 编辑
摘要: android 飞行射击游戏类 采用的 xamarin 移动端跨平台技术 纯C#语言实现,游戏引擎完全自己编写, 有兴趣的小伙伴可以解压安装包 ILSpy 研究 ^_^ 自主研发动画引擎 ,碰撞引擎,UI引擎,各种算法 操作简单 1.手指拖动飞机 躲避敌机 2.通过吃敌机爆炸后遗落的物品增加各种属性 阅读全文
posted @ 2016-04-13 16:48 dint 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 目前在做一个游戏,原来J2ME上的,移到android倒是不复杂,在Canvas绘图这个系统里,封装Image,封装Graphics这些都很容易,该优化的也优化了,但由于有些地方一屏里绘制了较多图片,性能相当不给力。android既然提供了OpenGL ES,相比硬件图形处理比Canvas这种东东要 阅读全文
posted @ 2016-03-04 12:03 dint 阅读(821) 评论(0) 推荐(0) 编辑
摘要: 最近项目前端使用 jquery+easyui来做,用了几个月,觉得easyui是一个很不错的开源前端UI框架, 虽然偶尔会遇到一些小问题,但是凭借多年前端开发的实力积累 都一一解决了,其中比较典型的就是 这个 easyui.editgrid插件了,是基于easyui.datagrid扩展的。其实只用 阅读全文
posted @ 2015-01-24 14:42 dint 阅读(7018) 评论(4) 推荐(3) 编辑
摘要: 几年前写的一个获取windows窗体基本信息和屏幕取色的小工具 ,一直在用。 下载地址 http://files.cnblogs.com/dint/SpyPlus.zip 阅读全文
posted @ 2015-01-24 11:39 dint 阅读(314) 评论(0) 推荐(0) 编辑
摘要: Oracle中的Wrap 功能是为了不让别人看到函数/存储过程的SQL源码的明文, 作为技术宅,有的时候想看源码但是看不到的那种心情是可以理解的, 发一个简单易用的 Oracle wrapped 解码工具, 该工具兼容win98及以上版本的 32/64位windows系统 http://files. 阅读全文
posted @ 2015-01-23 22:53 dint 阅读(7131) 评论(6) 推荐(1) 编辑
摘要: 提起ORM框架,大家都很熟悉,网上流行的ORM框架有很多,其中出名的有一些,不出名的更是数不胜数。 下面是自己实现的一个简单的ORM框架,实现了常用的增删查改功能,供大家研究ORM实现原理。 还有一些性能优化相关的功能没有做,这里并不想重复造轮子 仅供学习参考 功能描述: 1.支持Update语句 阅读全文
posted @ 2015-01-22 16:38 dint 阅读(782) 评论(0) 推荐(0) 编辑
摘要: 1.项目中有需要用到反射的地方,仔细研究了下反射,其效率并不高 还好微软提供了IL的编程方法,自己实现了一个高效反射类 下面举些常用例子: 我们反射出.NETFramework中的一个未公开的类 SessionStateUtility 并调用其私有方法 Deserialize 1 public st 阅读全文
posted @ 2014-12-17 18:24 dint 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 某次做项目要实现一个功能: 按星期选择一个连续的时间范围 比如:周一到周五,周六到周日 或 周六到周三 聪明的朋友马上想出办法:用两个选项为周一到周日的下拉列表实现,对 那样可以,但是我觉得不够友好, 所以利用业余时间写下了这个jQuery小插件。 源码:http://files.cnblogs.c 阅读全文
posted @ 2014-12-17 16:29 dint 阅读(1098) 评论(0) 推荐(0) 编辑
摘要: 一、寄存器总共有14个16位寄存器,8个8位寄存器通用寄存器: 数据寄存器: AH(8位) AL(8位) AX(16位) (AX和AL又称累加器) BH(8位) BL(8位) BX(16位) (BX又称基址寄存器,唯一作为存储器指针使用寄存器) CH(8位) CL(8位) CX(16位) (CX用于 阅读全文
posted @ 2014-10-21 17:38 dint 阅读(96) 评论(0) 推荐(0) 编辑