正文内容加载中...
posted @ 2019-08-29 20:58 xindoo 阅读 (120) 评论 (0) 编辑
摘要:Java生产者消费者是最基础的线程同步问题,java岗面试中还是很容易遇到的,之前没写过多线程的代码,面试中被问到很尬啊,面完回来恶补下。在网上查到大概有5种生产者消费者的写法,分别如下。 1. 用synchronized对存储加锁,然后用object原生的wait() 和 notify()做同步。 阅读全文
posted @ 2019-08-28 21:31 xindoo 阅读 (93) 评论 (0) 编辑
摘要:作为一个java开发者肯定都知道且使用HashMap,但估计大部分人都不太知道WeakHashMap。从类定义上来看,它和普通的HashMap一样,继承了AbstractMap类和实现了Map接口,也就是说它有着与HashMap差不多的功能。那么既然jdk已经提供了HashMap,为什么还要再提供一 阅读全文
posted @ 2019-08-28 07:17 xindoo 阅读 (49) 评论 (0) 编辑
摘要:很久之前人们为了继续享用并行化带来的好处而不想使用进程,于是创造出了比进程更轻量级的线程。以linux为例,创建一个进程需要申请新的自己的内存空间,从父进程拷贝一些数据,所以开销是比较大的,线程(或称轻量级进程)可以和父进程共享内存空间,让创建线程的开销远小于创建进程,于是就有了现在多线程的繁荣。 阅读全文
posted @ 2019-08-25 19:29 xindoo 阅读 (23) 评论 (0) 编辑
摘要:温馨提示:本文中Alfred是Mac平台的工具,不适用于其他平台。 "Alfred" 是Mac平台上被很多人吹爆的一款效率提升软件,我刚毕业工作的时候就看到公司内网有人推荐,但没有尝试。 后来我跳槽后自己买了Macbook pro,在努力把笔记本打造成高效开发工具时,又重新发现了这个app,又毫不犹 阅读全文
posted @ 2019-08-19 22:08 xindoo 阅读 (213) 评论 (0) 编辑
摘要:学过计算机底层原理、了解过很多架构设计或者是做过优化的同学,应该很熟悉局部性原理。即便是非计算机行业的人,在做各种调优、提效时也不得不考虑到局部性,只不过他们不常用局部性一词。如果抽象程度再高一些,甚至可以说地球、生命、万事万物都是局部性的产物,因为这些都是宇宙中熵分布布局、局部的熵低导致的,如果宇 阅读全文
posted @ 2019-08-05 16:40 xindoo 阅读 (197) 评论 (2) 编辑
摘要:“持续学习”是几乎所有大神都会给菜鸟们的建议之一,这个概念也不是最近被提出来的,早在两千多年前古希腊哲学家梭伦就提出“活到老学到老”,这可算最早的“持续学习”。近些年来持续学习在IT领域里又不不断被提及,程序猿们成为持续学习最大的一群实践者,我从没看到过那个其他行业的普通员工要像程序猿一样学习那么多 阅读全文
posted @ 2019-08-02 12:22 xindoo 阅读 (649) 评论 (7) 编辑
摘要:Plain strings(207) fooAnchors(206) ick$Ranges(202) [a-f]{4}Backrefs(201) (...).*\1Abba(190) ^((?!(.)(.)\3\2).)+$A man, a plan(176) ^(.)(.).*\2\1$Prime(286) ^(?!(xx+)\1+$)Four(199) ... 阅读全文
posted @ 2014-01-19 13:25 xindoo 阅读 (84) 评论 (0) 编辑
摘要:13年应该是我到现在经历事情最多的一年了,无论是学习,生活或是感情方面,这些带给我的也是一点点的成长。回想我12年学渣的一年,大一挂的科拖到13年才过,于是成功摆脱学渣的身份。12年经671忽悠接触ACM,然后就上了贼船了,不过正是因为ACM我才在13年发生这么多事。 13年年初,在家过年,家族中接连发生的两件白事,深感生命之脆弱。除此之外,还算过的舒坦,另外还有一点,小学5年的同学孩子满月了。。。。。 对了,当时貌似还挂了一门物理,假期也就象征性的复习一下,开学补考成为为数不多几个过了的………踩狗屎运了。 再来就是13年的ACM省赛了,当时和10级的几个加上zhourush替吴... 阅读全文
posted @ 2014-01-04 11:15 xindoo 阅读 (30) 评论 (0) 编辑
摘要:最近在学习Django框架,需要使用到数据库,我使用的是mysql,跟java一样,需要安装驱动,这是驱动的下载网址http://sourceforge.net/projects/mysql-python/ 要注意的是此网址已被墙,需要翻墙过去。下载到压缩包后解压,然后执行安装命令先跳转的该目录下,然后执行sudo python setup.py install然后就是各种问题,需要配置这个那个的。其实在终端中输入:sudo apt-get install python-mysqldb然后一切OK,可以测试以下。import MySQLdb无报错就成功了 阅读全文
posted @ 2013-12-23 12:41 xindoo 阅读 (23) 评论 (0) 编辑