摘要: 小麦将原博客园随笔,搬家至csdn,敬请关注,感谢支持。 阅读全文
posted @ 2020-05-27 11:16 码农小麦 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 1 Thread的start方法和run方法的区别? run方法就是普通的一个方法,代码运行在当前主线程,start会启动一个新的线程,并运行run方法。 2 如何停止线程运行? 可以设置一个标志位,任务定期检查这个标记,如果标志设置为取消则任务停止执行,但已执行部分无法停止,标志变量最好设置为vo 阅读全文
posted @ 2019-03-16 18:50 码农小麦 阅读(621) 评论(0) 推荐(0) 编辑
摘要: 1 java中常见的同步机制? java主要同步机制是synchronized关键字, 还有显式的Lock,volatile,atomic,还有一些同步集合、阻塞队列等。 2 ‘++’操作是线程安全的吗? 不是,它是由读取-修改-写入三个独立的操作组成。 3 共享变量在多线程下如何保证线程安全? 因 阅读全文
posted @ 2019-03-15 09:52 码农小麦 阅读(1636) 评论(0) 推荐(0) 编辑
摘要: 小麦是一名开发人员,每天写完代码后,都要打包部署到集成环境,然后等着测试人员测试,测试人员提出bug时,小麦懊恼的修改着bug,然后修改代码,重新提交SVN,重新打包,上传到集成服务器,然后重启服务器,这么重复的工作,小麦忍不了了,决定化繁为简。 小麦想着最近自己一直在学linux shell编程, 阅读全文
posted @ 2019-02-27 17:08 码农小麦 阅读(2714) 评论(0) 推荐(0) 编辑
摘要: 我们常用到加锁方式有synchronized关键字,还有ReentrantLock,那如何利用Java模拟一把锁。 开始构思: 加锁就是为了让任何时刻,都只有一个线程访问共享资源,如果共享资源已经被线程占用,那其他线程来了只能选择等待,占用线程释放资源以后再唤醒其他等待线程。于是锁的基本样子就呼之欲 阅读全文
posted @ 2019-02-27 17:06 码农小麦 阅读(431) 评论(0) 推荐(0) 编辑
摘要: 这里的代码示例我用python实现一下: 分组就是把一个正则表达式的各个子表达式部分用括号括起来,然后可以调用groups()方法,获取所有的分组,python返回的是元组(X,XX,XXX)。 调用group(0)返回的是原字符串,group(1)返回的是分组匹配的第一个,group(2)返回的是 阅读全文
posted @ 2018-07-02 14:08 码农小麦 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 今天学习python函数时,打算写一个汉诺塔问题的实现,先是在脑海里想象了一下,有1块石头的时候,该怎么移,有2块石头的时候,该怎么移,越想越多,感觉脑袋就 搅糊了,于是准备直接写代码。其实,之所以想象会把自己搞迷糊,是因为想象的石块会越来越多,移动的步骤也越来越多。而如果使用代码,就可以站到一个比 阅读全文
posted @ 2018-06-14 11:06 码农小麦 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 我们有个与外部交互的接口是采用netty http,具体版本netty-4.1.18,为什么使用这个版本,我也不知道,历史原因。 由于netty都是异步请求,所以与外部交互总有些唯一的业务标识需要保存,以便前后数据可以勾兑。 这里先说明下,netty里的ByteBuf在读取channelRead未进 阅读全文
posted @ 2018-05-09 18:12 码农小麦 阅读(3535) 评论(0) 推荐(0) 编辑
摘要: 装饰器顾名思义就是包装,把函数包装一下我们可以做什么呢,我们可以在目标函数调用的前中后做一些事情,比如我们要统计一个函数的执行时间, def p(): print('Hello World') 要统计函数p的执行时间,最直接的是直接在函数体修改,添加时间计算逻辑: import time def p 阅读全文
posted @ 2018-04-27 16:20 码农小麦 阅读(171) 评论(0) 推荐(0) 编辑
摘要: Python3 的六个标准数据类型中: 不可变数据(四个):Number(数字)、String(字符串)、Tuple(元组)、Sets(集合); 可变数据(两个):List(列表)、Dictionary(字典)。 不可变数据减少了重复数据的内存消耗,但同时重新赋值时,需要重新开辟内存空间。 a = 阅读全文
posted @ 2018-04-27 15:41 码农小麦 阅读(460) 评论(0) 推荐(0) 编辑