- 博客(20)
- 资源 (14)
- 收藏
- 关注
转载 内存屏障与JVM并发
内存屏障,又称内存栅栏,是一组处理器指令,用于实现对内存操作的顺序限制。本文介绍了内存屏障对多线程程序的影响。我们将研究内存屏障与JVM并发机制 的关系,如易变量(volatile)、同步(synchronized)和原子条件式(atomic conditional)。本文假定读者已经充分掌握了相关概念和Java内存模型,不讨论并发互斥、并行机制和原子性。内存屏障用来实现并发编程中称为 可见性(v
2014-12-23 20:44:52 589
转载 Avoiding memory leaks
Android applications are, at least on the T-Mobile G1, limited to 16 MB of heap. It's both a lot of memory for a phone and yet very little for what some developers want to achieve. Even if you do not
2014-12-22 19:45:23 541
转载 Chrome编译
1. 前言 想学习Chrome很久,久未得空,最近挤出些时间来玩一玩,一是为记录学习历程,供自己和朋友参考,二是督促学习。 Ps:Google对于Chrome project编译已写的十分详细,我是按照Google文档按布做下来的。且该文档会根据不同的版本有修正,所以如果下载的是最新源码最好按照Google文档来架设编译环境,避免不必要的麻烦。 注意: 1)建议在配置过程中
2014-12-15 09:55:31 653
转载 Again about determining size of Java object
Sometimes it is necessary to estimate the size a Java object takes in memory. The paper describes one of the approaches that uses Java Instrumentation API. When it can be necessary Java object s
2014-12-12 17:40:18 988
转载 Android获取手机制作商,系统版本等
在开发中 我们有时候会需要获取当前手机的系统版本来进行判断,或者需要获取一些当前手机的硬件信息。 android.os.Build类中。包括了这样的一些信息。我们可以直接调用 而不需要添加任何的权限和方法。 android.os.Build.BOARD:获取设备基板名称 android.os.Build.BOOTLOADER:获取设备引导程序版本号 an
2014-12-12 17:05:43 569
转载 lr pc sp寄存器相关理解
转载链接:http://hi.baidu.com/a843538946/item/4e2a34fe48b6e5be31c199ec http://blog.sina.com.cn/s/blog_62714d6a0100mjgx.html http://blog.chinaunix.net/uid-12461657-id-30682
2014-12-12 17:02:57 2476
转载 Java 中使用内存映射文件需要考虑的 10 个问题
java中的内存映射IO和内存映射文件是什么? 内存映射文件非常特别,它允许Java程序直接从内存中读取文件内容,通过将整个或部分文件映射到内存,由操作系统来处理加载请求和写入文件,应用只需要和内存打交道,这使得IO操作非常快。加载内存映射文件所使用的内存在Java堆区之外。Java编程语言支持内存映射文件,通过java.nio包和MappedByteBuffer 可以从内存直接读写文件
2014-12-12 15:41:41 647
转载 java nio 之MappedByteBuffer,高效文件/内存映射
MappedByteBuffer是java nio引入的文件内存映射方案,读写性能极高。NIO最主要的就是实现了对异步操作的支持。其中一种通过把一个套接字通道(SocketChannel)注册到一个选择器(Selector)中,不时调用后者的选择(select)方法就能返回满足的选择键(SelectionKey),键中包含了SOCKET事件信息。这就是select模型。 Socket
2014-12-12 15:40:25 666
转载 CmdmacAndroid插件原理剖析
前言 关于插件,已经在各大平台上出现过很多,eclipse插件、chrome插件、3dmax插件,所有这些插件大概都为了在一个主程序中实现比较通用的功能,把业务相关或者让可以让用户自定义扩展的功能不附加在主程序中,主程序可在运行时安装和卸载。 在android如何实现插件也已经被广泛传播,实现的原理都是实现一套插件接口,把插件实现编成apk或者dex,然后在运行时使用DexClassL
2014-12-12 11:48:05 623
转载 Android Manifest之<application>元素中文注释
语法 android:backupAgent="string" android:debuggable=["true" | "false"] android:description="string resource" android:enabled=["true
2014-12-11 20:51:19 628
转载 从 Java 代码到 Java 堆
本文将为您提供 Java™ 代码内存使用情况的深入见解,包括将 int 值置入一个 Integer 对象的内存开销、对象委托的成本和不同集合类型的内存效率。您将了解到如何确定应用程序中的哪些位置效率低下,以及如何选择正确的集合来改进您的代码。 优化应用程序代码的内存使用并不是一个新主题,但是人们通常并没有很好地理解这个主题。本文将简要介绍 Java 进程的内存使用,随后深入探讨您编写的 Ja
2014-12-10 14:17:12 760
转载 《C++ concurrency in action》 读书笔记 -- Part 4 第五章 C++的多线程内存模型 (1)
《C++ concurreny in action》 第五章 C++的内存模型和原子操作 5.1 Memory model basics (内在模型基础) Memory model 涉及两个方面:structural 和 concurrency structural 是基础,主要是对象的布局 5.1.1 Objects and memory location The
2014-12-08 17:30:19 728
转载 C++11 并发指南七(C++11 内存模型一:介绍)
第六章主要介绍了 C++11 中的原子类型及其相关的API,原子类型的大多数 API 都需要程序员提供一个 std::memory_order(可译为内存序,访存顺序) 的枚举类型值作为参数,比如:atomic_store,atomic_load,atomic_exchange,atomic_compare_exchange 等 API 的最后一个形参为 std::memory_order o
2014-12-08 17:14:47 836
转载 深入理解SP、LR和PC
深入理解ARM的这三个寄存器,对编程以及操作系统的移植都有很大的裨益。 1、堆栈指针r13(SP):每一种异常模式都有其自己独立的r13,它通常指向异常模式所专用的堆栈,也就是说五种异常模式、非异常模式(用户模式和系统模式),都有各自独立的堆栈,用不同的堆栈指针来索引。这样当ARM进入异常模式的时候,程序就可以把一般通用寄存器压入堆栈,返回时再出栈,保证了各种模式下程序的状态的完整性。
2014-12-08 16:16:28 838
转载 sun.misc.Unsafe
Java是一门安全的编程语言,防止程序员犯很多愚蠢的错误,它们大部分是基于内存管理的。但是,有一种方式可以有意的执行一些不安全、容易犯错的操作,那就是使用Unsafe类。 本文是sun.misc.Unsafe公共API的简要概述,及其一些有趣的用法。 Unsafe 实例 在使用Unsafe之前,我们需要创建Unsafe对象的实例。这并不像Unsafe unsafe = new
2014-12-05 17:37:06 670
转载 Chrome学习笔记(一):线程模型,消息循环
转载自Soul Apogee 本文链接地址:Chrome学习笔记(一):线程模型,消息循环 看Chrome已经有一段时间了,但是一直都没有沉淀些内容下来,是该写写笔记什么的了,免得自己忘记了。看的都是Windows平台下的代码,所以记录也都是记录的。。。废话。。 那么首先,先从最基础的东西记录起吧:Chrome的线程模型和消息循环。 多线程的麻烦 多线程编程一直是一件麻烦
2014-12-04 20:55:28 796
转载 LMAX Disruptor 原理
fxjwind LMAX Disruptor 原理 http://mechanitis.blogspot.com/search/label/disruptor http://ifeve.com/disruptor/, 并发框架Disruptor译文 http://blog.sina.com.cn/s/blog_68ffc7a4010150yl.html, 论文译文
2014-12-03 21:46:42 902
转载 高性能I/O设计模式概述
这篇概述把网上的一些资料汇总到了一起,主要目的是解释清楚I/O模型的概念和Reactor、Proactor模式。 目录 服务器的几种实现方法 服务器一般需要支持高性能的I/O,大并发等。 第一种实现一个服务器的想当然的方法是,当有请求过来时,就 fork 一个子进程进行处理。这种方法易于理解,实现简单,如果并发量比较小,应该也能应付。但是如果是高并发的服务器就不理想
2014-12-03 17:51:13 635
转载 Chrom 的线程模型
线程(http://www.chromium.org/developers/design-documents/threading ) a) 概述 Chromium是一个超级多线程的产品,我们尝试让UI的反应尽可能的快,这样就意味着不要用任何的I/O操作或者长操作来阻塞UI 线程,我们的方法是在线程之间使用消息传递,我们不鼓励使用阻塞和线程安全的对象,取而代之的是,对象都只存在一个线程中
2014-12-03 17:00:35 728
转载 JVM伪共享
伪共享False sharing说明JVM底层技术也不让人那么放心。 内存缓存系统中基本单元是高速缓存行(Cache lines). cpu会把数据从内存加载到高速缓存中 ,这样可以获得更好的性能,高速缓存默认大小是64 Byte为一个区域,一个区域在一个时间点只允许一个核心操作,也就是说不能有多个核心同时操作一个缓存区域。 因为高速缓存是64字节,而Hotspot JVM的对
2014-12-02 16:43:32 623
基于ffmpeg的Android 2.2播放器开源代码
2012-07-24
Linux- 用C语言实现的简单Web服务器源代码
2011-08-31
Nokia论坛技术资料Symbian解决方案-中文版 CHM文档
2010-01-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人