Java里面运行一个线程可以通过继承Thread的方式,也可以通过实现Runnable的接口来实现,那么两者能不能混用呢,比如以下的例子: public class JavaTest extends Thread{ public JavaTest(Runnable target) { super(target); } public void run() { System.out.println("run() in JavaTest thread."); } public static…
最近工作中有接触到DelayQueue,网上搜索资料的时候发现一篇文章谈到DelayQueue的坑.点击打开链接 文中已经总结了遇到坑的地方,还有解决方案.不过我第一眼看一下没弄明白为什么,所以翻了翻源码深究了一下,下面把这个坑的原因以及原理分析一下. 首先是DelayQueue的take()方法: public E take() throws InterruptedException { final ReentrantLock lock = this.lock; lock.lockInterr…
先看看如下C#的脚本代码: 猜猜控制台打出来的是什么? In the bool parameter function, value info is: True 肯定出乎很多人的意料吧? transform的类型跟bool类型一点关系都没有,怎么会调用TestFunction(bool value)呢?我碰到这个问题的时候,第一反应是编译器出问题了,后来同事的机器上一样有同样的运行结果.于是我继续写了如下代码: 这次的运行结果符合预期了,调用的是void TestFunction(System.…
QString::toWCharArray(wchar_t * array) 其中 wchar_t * array 除了要分配内存之外,必须用 wmemset 初始化. 环境是 Visual Studio 2015. QT官方文档确实注明了:Note: This function does not append a null character to the array. 另一种转换方法 auto archiveWString = mArchive.toStdWString(); auto ar…