明天就放假了,今天休闲下,收集一些关于程序员的笑话给大家分享,希望大家节日快乐。阅读全文>>
今天百度“javacui”,看到连接我的博客连接时发现,之前申请的百度口碑已经通过。因为该站点所有内容都是原创,不转载和拷贝别人东西,所以更新相对来说稍慢,因此对于网站来说SEO方面有些迟钝。虽然如此,也如我一直所说,这个博客就是我对自己想法的一个实践,是我自己的兴趣,所以我不会特别关心那些方面的劣势。阅读全文>>
创建博客,是最初的一个想法,本来我还想自己写一个程序,但是随着工作和生活节奏加快,慢慢遗忘。现在,为了当初的想法,我付出了实践。虽然不是自己写程序,样式、内容、运营等还是自己去搞的,我是在慢慢体味其中的乐趣,因为这是我自己想做的。阅读全文>>
我知道oracle表分区,不过那是数据库设计阶段的事情,目前是远水解不了近渴。当前的数据库表,要求保留一个月数据,且表存在大量录入更新,不存在程序删除。为了解决频繁查询和更新的瓶颈,我在oracle内根据需要创建了索引。但是随着数据量的增加,一个半月数据就要超千万。阅读全文>>
BCD码(Binary-Coded Decimal)亦称二进码十进数或二-十进制代码。用4位二进制数来表示1位十进制数中的0~9这10个数码。是一种二进制的数字编码形式,用二进制编码的十进制代码。BCD码这种编码形式利用了四个位元来储存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。这种编码技巧最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串作准确的计算。相对于一般的浮点式记数法,采用BCD码,既可保存数值的精确度,又可免却使电脑作浮点运算时所耗费的时间。此外,对于其他需要高精确度的计算,BCD编码亦很常用。阅读全文>>
Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池。newFixedThreadPool 创建一个定长线程池。阅读全文>>
今天晚上四点被服务器挂掉的短信吵醒,马上登录系统看看,发现服务进程已经关闭。立马看系统事件,看样子是发生了重启。阅读全文>>
死锁在多线程的情况下,在竞争竞态条件与临界区(http://www.javacui.com/Theory/147.html)出现时,会出现数据不同步情况, 而为了避免这种情况,之前也说了:界区实现方法有两种,一种是用synchronized,一种是用Lock显式锁实现。我们不使用显示的去锁,我们用信号量(http://www.javacui.com/Theory/148.html)去控制。阅读全文>>
Semaphore 通常用于限制可以访问某些资源(物理或逻辑的)的线程数目。自从5.0开始,jdk在java.util.concurrent包里提供了Semaphore 的官方实现,因此大家不需要自己去实现Semaphore。虽然JDK已经提供了相关实现,但是还是很有必要去熟悉如何使用Semaphore及其背后的原理。阅读全文>>
当两个线程竞争同一资源时,如果对资源的访问顺序敏感,就称存在竞态条件。导致竞态条件发生的代码区称作临界区。在临界区中使用适当的同步就可以避免竞态条件。界区实现方法有两种,一种是用synchronized,一种是用Lock显式锁实现。阅读全文>>