- 博客(14)
- 收藏
- 关注
原创 关于TCP的滑动窗口和拥塞控制
滑动窗口(swnd,即真正的发送窗口) = min(拥塞窗口,通告窗口)通告窗口:即TCP头里的一个字段AdvertisedWindow,是接收端告诉发送端自己还有多少缓冲区可以接收数据。于是发送端就可以根据这个接收端的处理能力来发送数据,而不会导致接收端处理不过来。原则:快的发送方不能淹没慢的接收方接收端在给发送端回ACK中会汇报自己的AdvertisedWindow = MaxRc
2015-12-16 23:30:50
1089
原创 关于线程锁的学习
最近看到了一个常用于并发编程的计数器类:AtomicInteger,这个类通过乐观锁实现了i++和i--的原子性和线程安全。具体看一下实现代码: static { try { valueOffset = unsafe.objectFieldOffset (AtomicInteger.class.getDeclaredField("val
2015-09-03 14:26:19
782
原创 事务的隔离级别以及Mysql事务的使用
前言因为最近在做数据库和搜素引擎同步相关的工作,学习了数据库事务相关的知识。事务相关的知识,尤其是数据库内的各种锁机制也是相当复杂的,在此仅作为一个初学者和使用者的角度作为一个分析和整理。整理过程中我放弃了许多书面而难懂的定义解释(网上很多资料杂乱难懂废话又多还不一定对),尝试找到比较容易理解的解释。有问题的话也欢
2015-08-29 14:13:16
1001
2
原创 Android wear的数据通讯方式之DataItems
Android wear 提供了多种手机和手表之间的数据通讯方式。DataItem就是一个手机和手表都可以获取的共享数据空间,基于GoogleApiClient(并不意味着必须翻墙才能使用,只要手机有google的api即可),适用于小于100kb的数据共享。既然是一个共享内存(队列),那么手机和手表既可以是发送方,也可以是接收方,但是每方都需要先创建一个GoogleApiClient
2015-05-29 12:53:27
2281
翻译 android性能优化
google官方文档:http://developer.android.com/training/best-performance.html我只是做一下笔记和总结android 16ms刷新一次界面,所以避免连续运算超过16ms否则会丢帧不要过度绘制(即不显示的或者被覆盖的layout不要绘制)
2015-05-12 12:46:42
448
原创 Letter Combinations of a Phone Number
https://leetcode.com/problems/letter-combinations-of-a-phone-number/这是我一开始的思路,穷举而已。String[] myMap=new String[]{"abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"}; public List letterCombination
2015-05-05 16:13:33
646
原创 JAVA对于乘法除法和模运算的优化,是否需要转换成位运算
最近思考一个问题。我们知道,在底层汇编代码中,除以2的指令效率远低于直接右移1位。所以我看到的不止一个java教学视频说过/2尽量写成>>1。但是另一方面,我记得上课学过编译器的优化问题,很多事情其实是不需要程序员考虑的。那么事实是怎么样的呢?这就要考虑到java编译的流程了:.java文件先转换成.class文件(字节码),在运行的时候,JVM先
2015-04-21 15:23:25
4571
1
原创 Repeated DNA Sequences
原题链接https://leetcode.com/problems/repeated-dna-sequences/由于只有ATGC四个字母。我就简单的想到了位图对应的办法来做:public class Solution { public List findRepeatedDnaSequences(String s) { Set result=new HashSet();
2015-04-19 19:13:44
543
原创 如何计算C语言中结构体所占内存
示例:typedef struct _A{ char a; int b; float c; double d; int *pa; char *pc; short e;}A;第一步,计算出结构体所有类型的所占大小。typedef struct _A{ char a;//1 int b;//4 float c;//4 double d;//
2015-03-28 21:35:26
961
1
原创 android程序中 直接打开系统设置的锁定屏幕界面
做android锁屏程序时,在不获取root权限下,有很多能够实现屏蔽系统锁屏的方法。比如最常见的KeyguardManager mKeyguardManager=null;KeyguardLock mKeyguardLock=null; mKeyguardManager = (KeyguardManager)getSystemService(Context.KEYGUARD_SERV
2014-03-14 22:55:42
2628
原创 移动View位置时,修改图片资源导致View在原位置闪烁的问题
在做一个类似android4.0默认环状解锁的界面的时候,发现拖动圆环至相应位置,引起图片变化时,会使圆环的View在其中央的原位置闪一下。由于我的圆环是重写的ImageView里面的onTouch方法,在onTouch方法内根据位置判断修改图片资源的。设断点检验后发现,虽然修改图片资源是在onTouch方法内,但是圆环在原位置闪烁是发生在修改图片资源的onTouch方法执行之后,下一次onT
2014-03-14 14:17:11
1045
原创 笔记本新装msata固态硬盘后使用ghost装系统
新加了一个msata硬盘。感觉挺不错。分享一下装系统的步骤。由于C盘配置的文件比较多。不想用系统盘重装。所以直接ghost了。首先准备一个C盘的GHO镜像。装上固态硬盘。然后开机。使用DiskGenius(我用的V4.5)对SSD进行分区:(哪怕只是想要一个区也要分)选中SSD硬盘—新建分区,选择主磁盘分区、NTFS类型、勾选对齐到下列扇区的整数倍(下面的数字应该是
2014-02-07 16:30:15
8014
原创 使用TextPad一键编译运行C++程序和JAVA程序
配置-参数选择直接上图编译java:其中命令为C:\Program Files\Java\jdk1.7.0_09\bin\javac.exe运行java:其中命令为C:\Program Files\Java\jdk1.7.0_09\jre\bin\java.exe使用C++需要先安装G++:编译C++:运行c程序:
2014-02-02 22:03:18
7984
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人