Run loops是线程相关的一些基本东西。一个run loop是一个处理消息的循环。用来处理计划任务或者收到的事件。run loop的作用是在有事做的时候保持线程繁忙,没事的时候让线程挂起。Run loop的管理并不是完全自动的。你仍然需要设计代码来在合适的时候启动run loop来相应事件。Co...
分类:
移动开发 时间:
2014-08-05 18:44:59
阅读次数:
376
在前面一片文章《JVM内部细节之一:synchronized关键字及实现细节》中已经提到过偏向锁的概念,在理解什么是偏向锁前必须先理解什么是轻量级锁(Lightweight Locking)。引入偏向锁是为了在无多线程竞争的情况下尽量减少不必要的轻量级锁执行路径,因为轻量级锁的获取及释放依赖多次C....
分类:
其他好文 时间:
2014-08-05 18:22:59
阅读次数:
271
java中启动多线程有两种方法,一是继承Thread类,二是实现Runnable接口。 继承Thread类: java中正确地启动多线程不能直接调用run()方法,而是调用从Thread类中继承而来的start()方法。 class myThead01 extends Thread { privat...
分类:
编程语言 时间:
2014-08-05 18:16:39
阅读次数:
252
前一段进行网络基础库构建的时候,网络发送的加密组包以及网络返回的回调解包处理都是在单独的主线程处理。 跟踪程序的时间发现这部分耗时还挺大,于是决定使用多线程处理,至少不应该使用主线程。
一直以来网上都在强调多线程的dispatch的妙用,自己仅仅是会用而没有实际测试过它的性能。今天将上次测试的结果发出来,说实话dispatch的多线程效率确实很高,跟cpu的核心数有很多关系。
测试思想:
使...
分类:
其他好文 时间:
2014-08-05 15:49:29
阅读次数:
204
刚学习完java,对现在这块还不是很了解.因为做的项目比较小,所以对Thread接触的不是很多,偶尔在网上看看相关资料,也没有去特意深刻的了解,以前看篇文章说ThreadLocal是解决多线程共享数据...
分类:
其他好文 时间:
2014-08-05 14:32:09
阅读次数:
182
c++11支持多线程,底层还是使用的lphtread,所以编译的时候需要加上相关的一些参数。 下面是我使用codeblokcs编译成功的例子 第一行是编译参数? 需要 -std=c++11? lpthread 第二行是链接参数?? 需要 -Wl,--no...
分类:
其他好文 时间:
2014-08-05 14:30:20
阅读次数:
231
无论是Android亦或者Java中或多或少需要调用底层的一些命令,执行一些参数;
此时我们需要用到Java的Process来创建一个子进程,之所以是子进程是因为此进程依赖于发起创建请求的进程,如果发起者被Kill那个子进程也将Kill。
对于Process相信使用过的朋友一定不会陌生,它具有如下特点:
1.创建简单
2.控制难
3.容易导致无法创建子进程
4.如果是多线程那么很有可能造成内存溢出
以上现象如果你只是偶尔使用一次,创建一个进程或许你什么都没有感觉到,但是如果你使用了多线程,进行了大量的...
分类:
移动开发 时间:
2014-08-05 14:16:19
阅读次数:
364
虽然很少有 Java? 开发人员能够忽视多线程编程和支持它的 Java 平台库,更少有人有时间深入研究线程。相反地,我们临时学习线程,在需要时向我们的工具箱添加新的技巧和技术。以这种方式构建和运行适当的应用程序...
分类:
编程语言 时间:
2014-08-05 11:41:09
阅读次数:
310
delphi 在多线程中动态连接ADO控件 异常:exception class EOleSysError with message '尚未调用CoInitialize'如果是使用多线程的话那就在 Execute事件的开头加上 CoInitialize(nil); 结尾加上CoUninitializ...
分类:
编程语言 时间:
2014-08-05 10:48:20
阅读次数:
880
1、高级同步机制 使用synchronized关键词的问题在于加锁范围是固定的,无法把锁在对象之间进行传递,使用起来不灵活,但是也不容易出错。 (1)tryLock (2)ReadWriteLock (3)ReentrantLock 2、底层同步器 3、...
分类:
编程语言 时间:
2014-08-05 09:44:59
阅读次数:
246