摘要:
解决办法: 在编译plugin的时候添加参数-gcflags="all=-N -l" 例如:go build -gcflags="all=-N -l" ... 打开go的编译参数帮助可以看到参数含义go tool compile -help -N 关闭编译器优化 -l 取消内联 all= 作用于所有 阅读全文
摘要:
JAVA语言中有一些基本数据类型,比如int,long,double... 这些数据类型可以支持一些运算操作符,其中对于int类型的++/--操作符 Integer类型是一个对象类型,居然也可以支持++运算,那么问题来了 一个Integer对象执行++操作之后还是原来那个对象吗? 测试代码 publ 阅读全文
摘要:
在计算机软件中,单例的定义是在整个程序生命周期里,一个单例类的实例只能存在一个 Java 应用里使用单例的例子 "java.lang.Runtime getRuntime()" "java.lang.System getSecurityManager()" 最佳实践(推荐) 在Joshua Bloc 阅读全文
摘要:
工作中经常会出现一些模版代码,这些代码其实没有什么新鲜,都是老套的代码反复使用,比如在调用rpc方法之后的异常处理与日志打印,使用redis加锁与解锁,给一个线程插入log_id... 先说一下使用模版的好处 1. 编码速度 我们可以通过官方的实例看一下使用效果,输入几个关键字符就可以自动生成大段的 阅读全文
摘要:
今日阅读了陈皓老师的 "《程序员练级攻略》" 的开篇 其中的两篇引用文章 "《Teach Yourself Programming in Ten Years》" , "《程序员的荒谬之言还是至理名言?》" 在读完之后同样让人感触很深 文章里“anyone can cook, but only the 阅读全文
摘要:
本题是比较典型的滑动窗口问题 这类问题一般通过一个滑动窗口就能在O(N)的时间复杂度下求解 本题可以先退化成考虑K=0的情况,此时题目就变成了求解字符串中最长连续子串长度问题了 我们先可以通过这个特例先了解一下滑动窗口的求解过程 上图的求解过程展示中,窗口从左至右不断扩张/滑动,当窗口触达字符串末尾 阅读全文
摘要:
近日线上一个项目总是时隔1周发生OOM自动重启,问题很明显内存泄漏了。。。 使用jmap查看一下线上服务堆使用情况,实例最多的前10个类 这段代码是当时想要使用GZIP做解压缩从网上抄来了,当时只是用单测验证了一下这段代码的正确性,就上线了。 出现了内存泄漏问题之后,回过头来反思这段代码发现这里使用 阅读全文
摘要:
关闭时可使用如下代码 但是实际使用中,可能会出现即使使用了 方法,还是无法终止线程的问题,那是因为你的线程无法被中断 方法简单理解就是给在运行的线程发一个中断信号,如果你的线程忽略这个信号,那就无法停下来 举个例子来说明这个问题 从上面的测试用例可以看到 无法被 终止 然而 可以被正常终止,因为通过 阅读全文
摘要:
使用背景 项目中需要使用单redis实例存储千万级别的数据,当时认为开多线程存储能够提高执行速度,开了10个线程不停的存储每一条数据。结果运行速度龟速,加大线程数还是无果。 redis 单线程 官方FAQ表示,因为Redis是基于内存的操作,CPU不是Redis的瓶颈,Redis的瓶颈最有可能是机器 阅读全文
摘要:
给定一个字符串 s 和一些长度相同的单词 words。在 s 中找出可以恰好串联 words 中所有单词的子串的起始位置。 注意子串要与 words 中的单词完全匹配,中间不能有其他字符,但不需要考虑 words 中单词串联的顺序。 示例 1: 输入: s = "barfoothefoobarman 阅读全文