shared

转载 2012年03月21日 11:25:07
如果考虑内存使用的问题,大家可能不得不从Windows内存管理机制想起,那样会是个比较复杂的问题,但你可以参考DOS内存分配机制的原理来理解问题,虽然Windows已经完全改变了内存分配的机制,但原理仍然是可以套用的. 一个Shared的代码(方法或是属性)是在你定义类时被加载的(或说进行内存分配的),这也是你不需要实例化类就可以调用的原因,而非Shared的属性或方法在你声明一个变量时仅仅分配了一个变量指针而非类对象实体,只在你New时才被分配真正的内存单元,这就是内存使用上的区别了,再涉及深一点,Shared更象占用一个应用的Data   Segment,而非Shared的使用的是Stack   Segment内存,这其中单元线程和单线程模型又是有所区别的.对于创建类的实例来说,Shared的代码并不会加载在每个实例的内存空间中,而是在一个全局的类空间中,所有实例调用的都应该是同一个代码段而不是每个实例中独立的代码段(哪怕那些代码完全相同),这也使得Shared的方法只可以访问Shared的属性,而不能访问非Shared的属性,因为只有他们才属于同一个内存空间中. 

相关文章推荐

ffmpeg-3.2-win32-shared.zip

  • 2017年06月07日 10:23
  • 16.09MB
  • 下载

共享内存——shared

  • 2015年08月17日 11:53
  • 7KB
  • 下载

DBMS_SHARED_POOL.PURGE 如何让游标cursor失效,如何清除占用共享池过大的游标

场景1:执行计划走错了,你重新分析了表,发现ORACLE依然在用之前错误的执行计划,新的统计信息没有起作用。 场景2:有一条SQL占用的共享池内存过大,你想把这个游标清理出去 通常有以下几种办法:...

MySQL-Cluster-shared

  • 2012年03月27日 16:24
  • 8.35MB
  • 下载

shared-all-1.0.0-M12.jar

  • 2013年01月08日 13:28
  • 2.55MB
  • 下载

Oracle 查看 Shared Pool 信息的相关脚本

关于Oracle SGA中Shared Pool的详细说明,参考我的blog:             Oracle Shared pool 详解             http:/...

ffmpeg-20150729-git-9ec17e4-win32-shared.7z

  • 2015年07月30日 10:47
  • 10.32MB
  • 下载

shared_ptr三个陷阱

http://blog.csdn.net/cai0612123/article/details/42916565?ref=myread shared_ptr三个陷阱 shared_ptr ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:shared
举报原因:
原因补充:

(最多只允许输入30个字)