E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
GamePlay架构研究
JPDA
架构研究
11 - Agent利用环境指针访问VM(断点操作篇)
引入:上文我们讲解了Agent如何利用环境指针访问VM(操作局部变量篇),这里主要关注于如何操作断点。这个在调试期间非常频繁的被使用。分类7:断点操作a.SetBreakPoint.设置断点,它会产生一个BreakPoint事件。jvmtiError SetBreakpoint(jvmtiEnv* env, jmethodID method, jlo
charles_wang8888
·
2014-12-09 10:09
jvmti
jpda
JDWP
JPDA
架构研究
11 - Agent利用环境指针访问VM(断点操作篇)
引入:上文我们讲解了Agent如何利用环境指针访问VM(操作局部变量篇),这里主要关注于如何操作断点。这个在调试期间非常频繁的被使用。分类7:断点操作a.SetBreakPoint.设置断点,它会产生一个BreakPoint事件。jvmtiErrorSetBreakpoint(jvmtiEnv* env, jmethodID method, jlocat
charles_wang888
·
2014-12-09 10:09
JPDA
JDWP
JVMTI
调试技巧
JPDA
架构研究
10 - Agent利用环境指针访问VM(局部变量管理篇)
引入:上篇我们讲解了Agent如何利用环境指针访问VM的管理堆的操作。这里主要讲解如何管理局部变量。分类6:局部变量管理a.GetLocalObject.获取局部对象jvmtiErrorGetLocalObject(jvmtiEnv* env, jthread thread, jint depth, jint slot,
charles_wang888
·
2014-12-09 10:12
JPDA
JDWP
JVMTI
调试技巧
JPDA
架构研究
10 - Agent利用环境指针访问VM(局部变量管理篇)
引入:上篇我们讲解了Agent如何利用环境指针访问VM的管理堆的操作。这里主要讲解如何管理局部变量。分类6:局部变量管理a.GetLocalObject.获取局部对象jvmtiError GetLocalObject(jvmtiEnv* env, jthread thread, jint depth, jint slot,
charles_wang8888
·
2014-12-09 10:12
jvmti
jpda
JDWP
JPDA
架构研究
10 - Agent利用环境指针访问VM(局部变量管理篇)
引入:上篇我们讲解了Agent如何利用环境指针访问VM的管理堆的操作。这里主要讲解如何管理局部变量。分类6:局部变量管理a.GetLocalObject.获取局部对象jvmtiError GetLocalObject(jvmtiEnv* env, jthread thread, jint depth, jint slot,
charles_wang8888
·
2014-12-09 10:12
jvmti
jpda
JDWP
JPDA
架构研究
9 - Agent利用环境指针访问VM (堆管理篇)
引入:上文中我们讨论了Agent利用环境指针访问VM的堆栈操作部分,这里我们讨论堆操作部分。分类5:堆操作a.GetTag.获取对象在堆上的唯一标识符(长整型)。jvmtiError GetTag(jvmtiEnv* env, jobject object, jlong* tag_ptr)b.SetTag.为对象设置堆上的唯一标示符。jvmtiErr
charles_wang8888
·
2014-12-08 22:55
jpda
JDWP
JPDA
架构研究
9 - Agent利用环境指针访问VM (堆管理篇)
引入:上文中我们讨论了Agent利用环境指针访问VM的堆栈操作部分,这里我们讨论堆操作部分。分类5:堆操作a.GetTag.获取对象在堆上的唯一标识符(长整型)。jvmtiError GetTag(jvmtiEnv* env, jobject object, jlong* tag_ptr)b.SetTag.为对象设置堆上的唯一标示符。jvmtiErr
charles_wang8888
·
2014-12-08 22:55
jpda
JDWP
JPDA
架构研究
9 - Agent利用环境指针访问VM (堆管理篇)
引入:上文中我们讨论了Agent利用环境指针访问VM的堆栈操作部分,这里我们讨论堆操作部分。分类5:堆操作a.GetTag.获取对象在堆上的唯一标识符(长整型)。jvmtiErrorGetTag(jvmtiEnv* env, jobject object, jlong* tag_ptr)b.SetTag.为对象设置堆上的唯一标示符。jvmtiErrorS
charles_wang888
·
2014-12-08 22:55
JDWP
JPDA
调试技巧
JPDA
架构研究
8 - Agent利用环境指针访问VM(堆栈管理篇)
引入:上篇文章讲解了Agent利用环境指针访问VM的线程组操作,这里讨论下堆栈操作。分类4:堆栈操作a.GetStackTrace.获取某线程的堆栈。jvmtiErrorGetStackTrace(jvmtiEnv* env, jthread thread, jint start_depth, jint max_frame_coun
charles_wang888
·
2014-12-08 22:50
JDWP
JPDA
调试技巧
JPDA
架构研究
8 - Agent利用环境指针访问VM(堆栈管理篇)
引入:上篇文章讲解了Agent利用环境指针访问VM的线程组操作,这里讨论下堆栈操作。分类4:堆栈操作a.GetStackTrace.获取某线程的堆栈。jvmtiError GetStackTrace(jvmtiEnv* env, jthread thread, jint start_depth, jint max_frame_
charles_wang8888
·
2014-12-08 22:50
jpda
JDWP
JPDA
架构研究
8 - Agent利用环境指针访问VM(堆栈管理篇)
引入:上篇文章讲解了Agent利用环境指针访问VM的线程组操作,这里讨论下堆栈操作。分类4:堆栈操作a.GetStackTrace.获取某线程的堆栈。jvmtiError GetStackTrace(jvmtiEnv* env, jthread thread, jint start_depth, jint max_frame_
charles_wang8888
·
2014-12-08 22:50
jpda
JDWP
JPDA
架构研究
7 - Agent利用环境指针访问VM(线程组管理篇)
引入:上篇文章中我们讨论了Agent利用环境指针访问VM的线程操作,这里讨论线程组操作。分类3:线程组操作a.GetTopThreadGroups.让Agent获取VM中的所有全局的线程组。jvmtiError GetTopThreadGroups(jvmtiEnv* env, jint* group_count_ptr, jthreadGroup*
charles_wang8888
·
2014-12-08 22:29
JDWP.JPDA
JPDA
架构研究
7 - Agent利用环境指针访问VM(线程组管理篇)
引入:上篇文章中我们讨论了Agent利用环境指针访问VM的线程操作,这里讨论线程组操作。分类3:线程组操作a.GetTopThreadGroups.让Agent获取VM中的所有全局的线程组。jvmtiErrorGetTopThreadGroups(jvmtiEnv* env, jint* group_count_ptr, jthreadGroup** g
charles_wang888
·
2014-12-08 22:29
JDWP.JPDA
调试技巧
JPDA
架构研究
7 - Agent利用环境指针访问VM(线程组管理篇)
引入:上篇文章中我们讨论了Agent利用环境指针访问VM的线程操作,这里讨论线程组操作。分类3:线程组操作a.GetTopThreadGroups.让Agent获取VM中的所有全局的线程组。jvmtiError GetTopThreadGroups(jvmtiEnv* env, jint* group_count_ptr, jthreadGroup*
charles_wang8888
·
2014-12-08 22:29
JDWP.JPDA
JPDA
架构研究
6 - Agent利用环境指针访问VM (线程管理篇)
引入:上篇文章讲解了分类:内存管理,现在讲线程类操作的接口。分类2:线程类操作a.GetThreadState.获取线程状态jvmtiError GetThreadState(jvmtiEnv* env, jthread thread, jint* thread_state_ptr)大家都知道线程有很多种状态,比如Alive,Terminated,R
charles_wang8888
·
2014-12-08 22:45
jpda
JDWP
JPDA
架构研究
6 - Agent利用环境指针访问VM (线程管理篇)
引入:上篇文章讲解了分类:内存管理,现在讲线程类操作的接口。分类2:线程类操作a.GetThreadState.获取线程状态jvmtiErrorGetThreadState(jvmtiEnv* env, jthread thread, jint* thread_state_ptr)大家都知道线程有很多种状态,比如Alive,Terminated,Runn
charles_wang888
·
2014-12-08 22:45
JDWP
JPDA
调试技巧
JPDA
架构研究
6 - Agent利用环境指针访问VM (线程管理篇)
引入:上篇文章讲解了分类:内存管理,现在讲线程类操作的接口。分类2:线程类操作a.GetThreadState.获取线程状态jvmtiError GetThreadState(jvmtiEnv* env, jthread thread, jint* thread_state_ptr)大家都知道线程有很多种状态,比如Alive,Terminated,R
charles_wang8888
·
2014-12-08 22:45
jpda
JDWP
JPDA
架构研究
5 - Agent利用环境指针访问VM (内存管理篇)
引入:我们在前面说到JVMTI的客户端Agent,又提到Agent通过环境指针来访问VM。这里就来看看环境指针到底有多大的访问VM的能力。分类1:内存管理a.Allocate.分配内存jvmtiError Allocate(jvmtiEnv* env, jlong size, unsigned char** mem_ptr)size:分配的字节数.m
charles_wang8888
·
2014-12-08 22:16
jpda
JPDA
架构研究
5 - Agent利用环境指针访问VM (内存管理篇)
引入:我们在前面说到JVMTI的客户端Agent,又提到Agent通过环境指针来访问VM。这里就来看看环境指针到底有多大的访问VM的能力。分类1:内存管理a.Allocate.分配内存jvmtiErrorAllocate(jvmtiEnv* env, jlong size, unsigned char** mem_ptr)size:分配的字节数.mem_
charles_wang888
·
2014-12-08 22:16
JPDA
调试技巧
JPDA
架构研究
5 - Agent利用环境指针访问VM (内存管理篇)
引入:我们在前面说到JVMTI的客户端Agent,又提到Agent通过环境指针来访问VM。这里就来看看环境指针到底有多大的访问VM的能力。分类1:内存管理a.Allocate.分配内存jvmtiError Allocate(jvmtiEnv* env, jlong size, unsigned char** mem_ptr)size:分配的字节数.m
charles_wang8888
·
2014-12-08 22:16
jpda
JPDA
架构研究
4 - JDWP的传输器
引入:上一篇文章主要分析JDWP层传输的数据包的格式,这篇文章我们主要关注于JDWP层是如何传输的。分析:传输的具体实现是根据各个JVM自己实现,但是他们有个共同点就是都是用C/C++实现的,并且都实现了jdwpTransport.h(和上篇一样的这个文件)。实现根据我们的知识可以得知是以dll文件(或者Unix平台下是so文件)的形式存在。因为我们从前面了解到,JDWP层有Agent负责在数据包
charles_wang888
·
2014-12-08 17:39
JPDA
JDWP
调试技巧
JPDA
架构研究
4 - JDWP的传输器
引入:上一篇文章主要分析JDWP层传输的数据包的格式,这篇文章我们主要关注于JDWP层是如何传输的。分析:传输的具体实现是根据各个JVM自己实现,但是他们有个共同点就是都是用C/C++实现的,并且都实现了jdwpTransport.h(和上篇一样的这个文件)。实现根据我们的知识可以得知是以dll文件(或者Unix平台下是so文件)的形式存在。因为我们从前面了解到,JDWP层有Agent负责在数据包
charles_wang8888
·
2014-12-08 17:39
jpda
JDWP
JPDA
架构研究
4 - JDWP的传输器
引入:上一篇文章主要分析JDWP层传输的数据包的格式,这篇文章我们主要关注于JDWP层是如何传输的。分析:传输的具体实现是根据各个JVM自己实现,但是他们有个共同点就是都是用C/C++实现的,并且都实现了jdwpTransport.h(和上篇一样的这个文件)。实现根据我们的知识可以得知是以dll文件(或者Unix平台下是so文件)的形式存在。因为我们从前面了解到,JDWP层有Agent负责在数据包
charles_wang8888
·
2014-12-08 17:39
jpda
JDWP
JPDA
架构研究
3 - JDWP层的数据包
引入:现在我们把目光转到JDWP层(它的全称是JavaDebugWireProtocol。从"Wire"这词就可以看出,它主要是起到"连线”的作用)。首先我们从JDWP层的数据包讲起。源码在JDK中很容易找到,它定义$JAVA_HOME/include/jdwpTransport.h头文件中。分析:Part1:握手过程(handshake)握手包发生在Debugger(JDI端)和TargetVM
charles_wang8888
·
2014-12-08 16:10
jpda
JDWP
JPDA
架构研究
3 - JDWP层的数据包
引入:现在我们把目光转到JDWP层(它的全称是JavaDebugWireProtocol。从"Wire"这词就可以看出,它主要是起到"连线”的作用)。首先我们从JDWP层的数据包讲起。源码在JDK中很容易找到,它定义$JAVA_HOME/include/jdwpTransport.h头文件中。分析:Part1:握手过程(handshake)握手包发生在Debugger(JDI端)和TargetVM
charles_wang888
·
2014-12-08 16:10
JDWP
JPDA
调试技巧
JPDA
架构研究
2 - JVMTI代理
引入:我们先从JVMTI讲起。JVMTI的主要作用是提供一组接口来检测VM的状态和控制VM中运行的JAVA程序。JVMTI是个双向接口:JVMTI的客户端叫Agent,它会在VM发生变化时通过事件机制被通知到变化。JVMTI的服务端是许多函数,它们会和VM实际打交道并把结果告知Agent.实践:我们这里先来看下Agent.Agent的方法定义在哪里呢?它们定义在$JAVA_HOME/include
charles_wang888
·
2014-12-08 15:55
JPDA
JDWP
调试技巧
JPDA
架构研究
2 - JVMTI代理
引入:我们先从JVMTI讲起。JVMTI的主要作用是提供一组接口来检测VM的状态和控制VM中运行的JAVA程序。JVMTI是个双向接口:JVMTI的客户端叫Agent,它会在VM发生变化时通过事件机制被通知到变化。JVMTI的服务端是许多函数,它们会和VM实际打交道并把结果告知Agent.实践:我们这里先来看下Agent.Agent的方法定义在哪里呢?它们定义在$JAVA_HOME/include
charles_wang8888
·
2014-12-08 15:55
jpda
JDWP
JPDA
架构研究
1- 整体架构
引入:关于JPDA(JavaPlatformDebuggerArchitecture)网上有很多讲解,例子。我也不重复发明轮子了,这组文章主要从实践的代码分析角度,仔细剖析这个平台的特点,以及这其中的一些问题澄清和误区。实践:如果我们从利用JavaRemoteDebug的功能来看待JPDA,并且使用socket的通信方式的话,那么整个过程应该如下:首先,你在要被调试的服务器上开启远程调试功能。以t
charles_wang8888
·
2014-12-08 14:23
jpda
JPDA架构
JPDA
架构研究
1- 整体架构
引入:关于JPDA(JavaPlatformDebuggerArchitecture)网上有很多讲解,例子。我也不重复发明轮子了,这组文章主要从实践的代码分析角度,仔细剖析这个平台的特点,以及这其中的一些问题澄清和误区。实践:如果我们从利用JavaRemoteDebug的功能来看待JPDA,并且使用socket的通信方式的话,那么整个过程应该如下:首先,你在要被调试的服务器上开启远程调试功能。以t
charles_wang888
·
2014-12-08 14:23
JPDA
JPDA架构
调试技巧
《炉石传说》架构设计赏析(3):
Gameplay
初探
欢迎转载,请注明作者【燕良@游戏开发】及原文地址:http://blog.csdn.net/neil3d/article/details/39453291经过前面的分析,我们已经找到了两个关键的类
Gameplay
Neil3D
·
2014-09-22 12:00
游戏
架构设计
C#
unity
游戏开发
成功软件架构的关键
是的,软件
架构研究
的主要内容可能主要是功能或用例,并且功能或用例确定的软件架构的大的方向如分层、MVC等,但实现功能与用例的架构方案有多种,而软件架构决定使用这种方
lifan_3a
·
2014-08-03 22:00
jeecms 基本
架构研究
阅读更多最近工作需要内容管理系统,下载了jeecmsv5顺便学习一下它的架构:采用框架为:Hibernate3.3.2+spring3.05+springMVC+freemarker2.3.16Hibernate:采用非注解持久化操作对数据访问层(DAO)的实现.优点:1.支持多个数据库的切换oracle,mysql等支持,2.支持以及缓存的和二级缓存的使用。缺点:1.sql语句部分有框架自动生成
longgangbai
·
2014-06-13 15:00
jeecms
基本架构
jeecms分析
jeecms 基本
架构研究
最近工作需要内容管理系统,下载了jeecms v5 顺便学习一下它的架构: 采用框架为:Hibernate3.3.2+spring3.05+springMVC+freemarker2.3.16 Hibernate:采用非注解持久化操作对数据访问层(DAO)的实现. &nb
longgangbai
·
2014-06-13 15:00
jeecms 基本架构
jeecms分析
jeecms 基本
架构研究
最近工作需要内容管理系统,下载了jeecms v5 顺便学习一下它的架构: 采用框架为:Hibernate3.3.2+spring3.05+springMVC+freemarker2.3.16 Hibernate:采用非注解持久化操作对数据访问层(DAO)的实现. &nb
longgangbai
·
2014-06-13 15:00
jeecms 基本架构
jeecms分析
jeecms 基本
架构研究
最近工作需要内容管理系统,下载了jeecms v5 顺便学习一下它的架构: 采用框架为:Hibernate3.3.2+spring3.05+springMVC+freemarker2.3.16 Hibernate:采用非注解持久化操作对数据访问层(DAO)的实现. &nb
longgangbai
·
2014-06-13 15:00
jeecms分析
jeecms 基本架构
jeecms 基本
架构研究
最近工作需要内容管理系统,下载了jeecms v5 顺便学习一下它的架构: 采用框架为:Hibernate3.3.2+spring3.05+springMVC+freemarker2.3.16 Hibernate:采用非注解持久化操作对数据访问层(DAO)的实现. &nb
longgangbai
·
2014-06-13 15:00
jeecms分析
jeecms 基本架构
GamePlay
:跨平台开源3D游戏引擎,黑莓的努力你不懂
但推出的开源跨平台的3D游戏引擎
GamePlay
,虽说比不上Unity炫酷,但再怎么样人也是个“富二代”,且
GamePlay
对那些想要开发移动或桌面游戏的独立开发者,也有着很大的帮助。
dj0379
·
2014-05-18 13:00
可延迟函数、内核微线程以及工作队列
尽管这些方法针对Linux内核,但方法背后的理念,对于系统
架构研究
具有更广泛的意义。例如,可以将这些理念应用到传统的嵌入式系统当中,取代原有的调度程序来进行任务调度。
山庄来客
·
2014-05-12 21:00
工作
api
function
api
function
api
function
struct
struct
任务
UE4学习笔记(一): 基本概念
UE4有很多个Module,
GamePlay
部分也是一个或多个Module,每个Editor也是一个Module搜索了一下,Module总数170+,总共分三类:Runtime,Editor,DeveloperRuntime
xoyojank
·
2014-03-30 17:00
开免跨的游戏引擎
Gameplay
黑莓出品,很轻量级PixelLight文件结构清楚,代码庞大,好像不支持移动平台
chunquedong
·
2014-03-20 13:00
游戏引擎
使用SpriteBuilder制作Cocos2D游戏完全中文教程(九)
实现更新方法在我们实际执行的更新方法之前我们在
Gameplay
.m中添加一个常数定义,我们将用它来检查是否有企鹅以很慢的最低速度来结束(
wealpan
·
2014-03-04 11:00
ios
cocos2d
Spritebuilder
boost log库使用 十二
架构研究
和主要使用总结
前面做了不少boostlog的例子,现在来总结一下,最新代码在我的开源项目:https://gitlab.com/mystudy/boost_log架构下面是boostlog库的架构图:简单使用 下面总结一下和这个架构相关的知识:如何获得Loggingcore#include ... boost::shared_ptrcore=logging::core::get(); 如何安装Sink对象一个c
sheismylife
·
2014-03-01 14:00
【我所认知的BIOS】-> Cache原理
今天试试看,如果可以的话,以后都用这种方式来发文章以前有对Cache的
架构研究
,最近由于看了一些ARM上相关的
lightseed
·
2014-02-15 16:00
cpu
cache
write
write
back
dram
through
Sprite Kit编程指南(9)-Sprite Kit最佳实践
你知道如何将节点添加到场景并让那些节点执行动作——创建游戏可玩性(
gameplay
)的构建块(buildingblocks)。你可能会错过的是更大的蓝图。
yu0089
·
2014-01-20 18:00
Sprite Kit编程指南(3)-添加动作到节点
为了添加游戏剧本(
gameplay
),你需要能够让精灵在屏幕周围移动并执行其他逻辑。SpriteKit让场景动起来所使用的主要机制是动作。到目前为止,你已经看过了动作子系统的某些部分。
yu0089
·
2014-01-20 18:00
2013 年国外互联网公司大数据技术
架构研究
2013年国外互联网公司大数据技术
架构研究
相较于国外,国内大数据企业在硬技术方面比较欠缺,更多的是大数据的行业应用,而这些应用究竟是否真的属于大数据,尚有待商榷。
李航421
·
2014-01-10 10:00
互联网
国外
2013
大数据技术
架构研究
由GXPT初谈敏捷开发
简单看一下这个项目的物理架构(著作权归项目
架构研究
者),详细的系统架构设计及项目实现请到大牛博客中寻
mazhaojuan
·
2013-12-30 21:00
网络游戏服务器
架构研究
(-)代理服务器的简单实践
网络游戏的服务器框架中,通常需要代理服务器ProxyServer来解决高并发的请求。目前实现了一个很简单代理服务器,没有考虑高并发的问题,只是实现了从客户端、代理服务器和游戏服务器的简单通信。从客户端发送数据,经过代理服务器转发,到达游戏服务器游戏服务器反射数据到代理服务器,后者在传递给客户端;1.负责接收来自客户端的消息2.负责转发来自服务器的消息3.管理客户端连接增加、删除客户端连接每个连接唯
chenxu111
·
2013-11-13 13:08
网络编程
网络游戏服务器
架构研究
(-)代理服务器的简单实践
网络游戏的服务器框架中,通常需要代理服务器ProxyServer来解决高并发的请求。 目前实现了一个很简单代理服务器,没有考虑高并发的问题,只是实现了从客户端、代理服务器和游戏服务器的简单通信。 从客户端发送数据,经过代理服务器转发,到达游戏服务器 游戏服务器反射数据到代理服务器,后者在传递给客户端; 1. 负责接收来自客户端的消息 2. 负责转发来自服务器的消息 3. 管理客户端
nbtlxx
·
2013-11-13 13:00
游戏
框架
Mina
网络游戏服务器
架构研究
(-)代理服务器的简单实践
阅读更多网络游戏的服务器框架中,通常需要代理服务器ProxyServer来解决高并发的请求。目前实现了一个很简单代理服务器,没有考虑高并发的问题,只是实现了从客户端、代理服务器和游戏服务器的简单通信。从客户端发送数据,经过代理服务器转发,到达游戏服务器游戏服务器反射数据到代理服务器,后者在传递给客户端;1.负责接收来自客户端的消息2.负责转发来自服务器的消息3.管理客户端连接增加、删除客户端连接每
nbtlxx
·
2013-11-13 13:00
游戏
框架
mina
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他