- 博客(89)
- 资源 (3)
- 收藏
- 关注
转载 40个Java多线程问题总结
前言原文 地址 http://www.cnblogs.com/xrq730/p/5060921.htmlJava多线程分类中写了21篇多线程的文章,21篇文章的内容很多,个人认为,学习,内容越多、越杂的知识,越需要进行深刻的总结,这样才能记忆深刻,将知识变成自己的。这篇文章主要是对多线程的问题进行总结的,因此罗列了40个多线程的问题。这些多线程的问题,有些来源于各大网站、有
2017-03-31 09:48:23
685
翻译 redis文档翻译_LRU缓存
Using Redis as an LRU cache使用Redis作为LRU缓存出处:http://blog.csdn.net/column/details/redisbanli.htmlWhen Redis is used as a cache, sometimes it is handy to let it automatically evict old
2015-06-24 21:53:10
1367
翻译 redis文档翻译_key设置过期时间
Available since 1.0.0. 使用开始版本1.01Time complexity: O(1) 时间复杂度O(1)出处:http://blog.csdn.net/column/details/redisbanli.htmlSet a timeout on key. After the timeout has expired, the
2015-06-22 16:25:19
3808
翻译 redis翻译_redis lua脚本
Available since 2.6.0. 加入版本2.6Time complexity: Depends on the script that is executed. 时间复杂度: 取决于脚本的执行 出处:http://blog.csdn.net/column/details/redisbanli.htmlIntroduction to EVAL
2015-06-21 11:41:14
2571
翻译 redis翻译_内存优化
Special encoding of small aggregate data types特别编码小集合的数据类型Since Redis 2.2 many data types are optimized to use less space up to a certain size. Hashes, Lists, Sets composed of just integers, and
2015-06-17 00:31:45
1829
翻译 Pub/Sub 发布订阅
Related commands相关命令PSUBSCRIBEPUBLISHPUBSUBPUNSUBSCRIBESUBSCRIBEUNSUBSCRIBEPub/SubSUBSCRIBE, UNSUBSCRIBE and PUBLISH implement the Publish/Subscribe messaging paradigm
2015-06-15 23:31:51
2657
翻译 redis翻译_redis管道
Redis is a TCP server using the client-server model and what is called a Request/Response protocol.redis使用的是基于tcp协议的client-server模型,也可以叫做Request/Response 协议模型.This means that usually a request i
2015-06-13 22:20:20
1358
原创 reids翻译_开始
今天2015年6月13号!对于我来说,是非常有意义的一天!第一申请csdn博客专栏申请通过,我将开始做技术一件具有挑战而且非常有意义的事,翻译Redis官方文档!这对于来说所有都是第一次,兴奋的同时也感到压力,我自己给的压力!现在我简单介绍下,本专栏要做的事,看下图:我将尽我的努力去翻译Redis官网的文档,也就是上图箭头所指标签。我采取中英文对照的方式,建议读者一定要对比英语
2015-06-13 22:09:01
996
1
转载 十进制和二进制转换
转:十进制小数转化为二进制小数一、二进制数转换成十进制数 由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。 例1105 把二进制数110.11转换成十进制数。 二、十进制数转换为二进制数 十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和
2015-05-28 16:07:28
1189
原创 redis入门级 命令
下载,解压,编译:wget http://download.redis.io/releases/redis-3.0.0.tar.gztar xzf redis-3.0.0.0.tar.gzcd redis-3.0.0makemake install二进制文件编译完成后在src目录,运行src/redis-serveredis命令操作工具redis-cli
2015-05-23 12:28:39
699
原创 java 获取泛型
public class Table {private String name;private ArrayList columns;private ArrayList keys;}public static void main(String[] args) throws NoSuchFieldException,SecurityException {Field f = Table.class.ge
2015-03-24 23:00:46
694
转载 或者字段修改符
import java.lang.reflect.Modifier; public class Main { public static void main(String[] argv){ /* Modifier.isAbstract(int mod) Modifier.isFinal(int mod)
2015-02-03 10:53:27
547
转载 最全的Eclipse快捷键
1. ctrl+shift+r:打开资源这可能是所有快捷键组合中最省时间的了。这组快捷键可以让你打开你的工作区中任何一个文件,而你只需要按下文件名或mask名中的前几个字母,比如applic*.xml。美中不足的是这组快捷键并非在所有视图下都能用。2. ctrl+o:快速outline如果想要查看当前类的方法或某个特定方法,但又不想把代码拉上拉下,也不想使用查找功能的话
2014-12-19 11:16:22
486
转载 设置颜色
设置Eclipse Marketplace:Help-->查找Eclipse Color Theme-->安装完成后 -->Preferences-->Appearance-->Color Theme-->选择你喜欢的主题即可如果你的Eclipse没有Marketplace的话,你自己装一个就行了:Help
2014-06-26 12:51:12
597
转载 Eclipse重构
重构和单元测试是程序员的两大法宝,他们的作用就像空气和水对于人一样,平凡,不起眼,但是意义深重。预善事,必先利器,本文就介绍怎样在Eclipse中进行重构。 本文介绍了Eclipse支持的重构种类,它们的含义,以及怎样重构。本文同时也可以作为学习重构知识的快速手册。 什么是重构重构是指在保持程序的全部功能的基础上改变程序结构的过程。重构的类型有很多,如更改类
2014-05-29 11:48:05
718
转载 如何写出更好的Java代码
如何写出更好的Java代码05/22. 2014Java是最流行的编程语言之一,但似乎并没有人喜欢使用它。好吧,实际上Java是一门还不错的编程语言,由于最近Java 8发布了,我决定来编辑一个如何能更好地使用Java的列表,这里面包括一些库,实践技巧以及工具。这篇文章在GitHub上也有。你可以随时在上面贡献或者添加你自己的Java使用技巧或者最佳实践。编
2014-05-26 10:07:40
902
转载 TCP Socket协议定义
TCP Socket协议定义------------------本文从这里开始,主要介绍TCP的socket编程。新手们(例如当初的我),第一次写socket,总是以为在发送方压入一个"Helloworld",接收方收到了这个字符串,就“精通”了Socket编程了。而实际上,这种编程根本不可能用在现实项目,因为:1. socket在传输过程中,helloworld有
2014-05-05 20:18:57
1169
转载 面试常问算法
摘要:面试也是一门学问,在面试之前做好充分的准备则是成功的必须条件,而程序员在代码面试时,常会遇到编写算法的相关问题,比如排序、二叉树遍历等等。在程序员的职业生涯中,算法亦算是一门基础课程,尤其是在面试的时候,很多公司都会让程序员编写一些算法实例,例如快速排序、二叉树查找等等。本文总结了程序员在代码面试中最常遇到的10大算法类型,想要真正了解这些算法的原理,还需程序员们花些功夫。
2014-04-29 16:28:06
1157
转载 hotspot1.7 ThreadPoolExecutor代码解析
写在开头:此文基于hotspot1.7.0(build 1.7.0-b147),1.6及以前的版本与1.7的版本实现上差别很大。线程池的逻辑非常复杂,原因在于线程池是有状态的(不是狭隘的指RUNNING,SHUTDOWN这些状态,而是一个类的状态,可以理解成对象的共享字段),而为了保证可伸缩性与效率,很多地方在访问这些状态的时候都没有使用锁来保证互斥访问,而采用的是多次检测。这意味着会有很多竞态条
2014-04-29 14:55:08
993
转载 java Future用法和意义一句话击破
在并发编程时,一般使用runnable,然后扔给线程池完事,这种情况下不需要线程的结果。 所以run的返回值是void类型。 如果是一个多线程协作程序,比如菲波拉切数列,1,1,2,3,5,8...使用多线程来计算。 但后者需要前者的结果,就需要用callable接口了。 callable用法和runnable一样,只不过调用的是call方法,该方法有一个泛型返回值类型,你可以
2014-04-28 15:02:33
789
转载 Java直接内存访问的技巧
Java被设计成一个安全,可管理的环境,然而 Java HotSpot有一个后门,提供了对低级别的,对直接内存和线程的操作。这个后门是—-sun.misc.Unsafe。这个类在JDK中有广泛的应用,例如,java.nio和java.util.concurrent。很难想象在日常开发中使用这些危险的,不可移植和未经校验的API。然而,Unsafe提供一种简单的方法来观察HotSpot JVM内部的
2014-04-24 16:28:56
6424
转载 socket阻塞与非阻塞,同步与异步、I/O模型
目录(?)[-]概念理解Linux下的五种IO模型阻塞IO模型非阻塞IO模型 IO复用模型信号驱动IO异步IO模型个IO模型的比较selectpollepoll简介socket阻塞与非阻塞,同步与异步作者:huangguisu1. 概念理解 在进行网络编程时,我们常常见到同步(Sync)
2014-04-23 11:03:56
740
转载 经典的智能寻路算法A*
MulinB按:经典的智能寻路算法,一个老外写的很透彻很清晰,很容易让人理解神秘的A*算法。以下是一个中文翻译版。A*寻路初探 GameDev.net作者: Patrick Lester译者:Panic 2005年3月18日 译者序:很久以前就知道了A*算法,但是从未认真读过相关的文章,也没有看过代码,只是脑子里有个模糊的概念。这次决定从头开始,研究一下这个
2014-03-21 18:19:33
1223
转载 为Java泛型总结
虽然Scala创始人Martin Odersky说当年正是因为Java泛型的丑陋,所以才想到要创建一个新的语言,不过这仍然不妨碍我们学习Java泛型。毕竟即使听说Java泛型不好用,但好不好用还是得会用了才知道。下面是一些有关Java泛型的总结:普通泛型class Point{ // 此处可以随便写标识符号,T是type的简称 private T var ; // var的类型由
2014-03-21 10:14:33
637
原创 终于找到java游戏开发工作
三个星期了!终于接到offer,到公司上班了!虽然工资有点低!但是算是转游戏开发成功你了!终结一句:尝试—分析失败原因.....................=成功
2014-03-13 19:31:09
3966
2
转载 Java NIO原理和使用
Java NIO非堵塞应用通常适用用在I/O读写等方面,我们知道,系统运行的性能瓶颈通常在I/O读写,包括对端口和文件的操作上,过去,在打开一个I/O通道后,read()将一直等待在端口一边读取字节内容,如果没有内容进来,read()也是傻傻的等,这会影响我们程序继续做其他事情,那么改进做法就是开设线程,让线程去等待,但是这样做也是相当耗费资源的。Java NIO非堵塞技术实际是采取Rea
2014-03-03 00:33:18
596
原创 java web开发转java游戏开发的经验(1)
本人做了一年四个月的java web开发。是在一个创业型的公司里面就职的!从大四实习开始就一直在改公司做!但是由于心理一直想做游戏,在把公司的平台做好之后,我就辞职下了来到广州!来到广州的当天晚上,我就疯狂第投简历。其实我还是有准备得看来很多游戏开发需要的技术!并且使用c++,coco2d-x,和java独自写了一个小游戏,希望可以借此找到游戏开发的工作!但是实现往往是不如我所愿的
2014-02-27 13:56:49
10153
2
转载 最优二叉树——哈夫曼树
最优二叉树——哈夫曼树分类: 学习专区 数据结构2012-04-28 18:05 3949人阅读 评论(8) 收藏 举报structnull算法inputpathtree 一:什么是最优二叉树?从我个人理解来说,最优二叉树就是从已给出的目标带权结点(单独的结点) 经过一种方式的组合形成一棵树.使树的权值最小. 最优二叉树是带权路径长度
2014-02-17 14:30:10
1200
转载 JVM内存管理和JVM垃圾回收机制
JVM内存管理和JVM垃圾回收机制 2010-09-29 18:36:18| 分类:默认分类 | 标签:|举报|字号大中小 订阅你对JVM内存组成结构和JVM垃圾回收机制是否熟悉,这里和大家简单分享一下,希望对你的学习有所帮助,首先来看一下JVM内存结构,它是由堆、栈、本地方法栈、方法区等部分组成,结构图如下所示。JVM学习笔记 JVM
2014-02-14 16:20:12
595
转载 解析JVM内存管理机制的几个概念
Java虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在Java虚拟机启动时创建的,而JVM使用-XX:PermSize设置非堆内存初始值,默认是物理内存的1/64。JVM内存管理机制堆(Heap)和非堆(Non-heap)内存按照官方的说法:“Java虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在Java虚拟机
2014-02-14 14:49:30
595
转载 Java内存模型-jsr133规范介绍
Java内存模型-jsr133规范介绍最近在看《深入理解Java虚拟机:JVM高级特性与最佳实践》讲到了线程相关的细节知识,里面讲述了关于java内存模型,也就是jsr 133定义的规范。系统的看了jsr 133规范的前面几个章节的内容,觉得受益匪浅。废话不说,简要的介绍一下java内存规范。什么是内存规范在jsr-133中是这么定义的A memory mode
2014-02-14 03:04:14
691
转载 要避免死锁先
要避免死锁先要知道死锁的原因,在网上找到了一篇说得还行的:操作系统中有若干进程并发执行, 它们不断申请、使用、释放系统资源,虽然系统的进程协调、通信机构会对它们进行控制,但也可能出现若干进程都相互等待对方释放资源才能继续运行,否则就阻塞的情况。此时,若不借助外界因素, 谁也不能释放资源, 谁也不能解除阻塞状态。根据这样的情况,操作系统中的死锁被定义为系统中两个或者多个进程无限期
2014-02-14 00:26:21
616
转载 java线程内存模型,线程、工作内存、主内存
java线程内存模型,线程、工作内存、主内存java线程内存模型线程、工作内存、主内存三者之间的交互关系图: key edeas所有线程共享主内存每个线程有自己的工作内存refreshing local memory to/from main memory must comply to JMM rules
2014-02-13 20:57:21
1140
转载 并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue用法
在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是BlockingQueue,非阻塞队列的典型例子是ConcurrentLinkedQueue,在实际应用中要根据实际需要选用阻塞队列或者非阻塞队列。注:什么叫线程安全?这个首先要明确。线程安全就是说多线程访问同一代码,不会
2014-02-13 19:48:55
519
转载 共享锁与排它锁区别
共享锁【S锁】又称读锁,若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁。这保证了其他事务可以读A,但在T释放A上的S锁之前不能对A做任何修改。排他锁【X锁】又称写锁。若事务T对数据对象A加上X锁,事务T可以读A也可以修改A,其他事务不能再对A加任何锁,直到T释放A上的锁。这保证了其他事务在T释放A上的锁之前不
2014-02-13 19:11:47
6282
原创 关系zorder一个坑
node1.addChild(node2,1),node1.addChild(node3,1)node2.addChild(nodeA) nodeA还是没node3挡住的,因为编译器默认是从上到下后设置的就在上层要想node2在上传必须调用node2.recorderChild(sprite, zOrder);
2014-02-12 22:50:11
930
转载 coco2d-x坐标转换
在开发cocos2d-x程序时一定要注意坐标轮换问题,屏幕与openGL坐标转换有相应的函数。convertToNodeSpace(const CCPoint& worldPoint): 这个函数把世界坐标转换为对象窗口内的坐标。convertToWorldSpace(const CCPoint& nodePoint): 这个函数把对象窗口内的坐标转换为世界坐标。 conver
2014-02-12 00:31:36
968
转载 坐标旋转变换公式的推导
翻译自: http://www.metro-hs.ac.jp/rs/sinohara/zahyou_rot/zahyou_rotate.htm翻译: 汤 永康出处: http://blog.csdn.net/tangyongkang转贴请注明出处1 围绕原点的旋转如下图, 在2维坐标上,有一点p(x, y) , 直线opの长度为r, 直线op和x轴的正向的夹角为a。 直线op
2014-01-09 10:55:21
1372
原创 如何通过界面屏幕的UI坐标,转换成45度叫的地图坐标?
如何通过界面屏幕的UI坐标,转换成45度叫的地图坐标?先将坐标空间旋转 45度再将此坐标空间压缩为 scaleY = 0.5当前坐标空间即可
2014-01-09 10:19:41
1852
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人