关于spinlock 我们在知道什么是spinlock之前,还需要知道为什么需要这个spinlock?spinlock本质就是锁,提到锁,我们就回到了多线程编程的混沌初期,为了实现多线程编程,操作系统引入了锁.通过锁能够保证在多核多线程情况下,对临界区资源进行保护,从而保证操作数据的一致性. 锁 那么我们来温习下操作系统中5个知名的锁概念,每个技术都有适合自己的应用场景,此处引入介绍不再进一步深入展开. 信号量(Semaphore) Linux中的信号量是一种睡眠锁.如有一个任务试图获得一个已被…
反射实现Model修改前后的内容对比   在开发过程中,我们会遇到这样一个问题,编辑了一个对象之后,我们想要把这个对象修改了哪些内容保存下来,以便将来查看和追责. 首先我们要创建一个User类 1 public class User 2 { 3 private string name; 4 public string Name 5 { 6 get { return name; } 7 set { name = value; } 8 } 9 private string age; 10 publi…
OverView 同步基元分为用户模式和内核模式 用户模式:Iterlocked.Exchange(互锁).SpinLocked(自旋锁).易变构造(volatile关键字.volatile类.Thread.VolatitleRead|Thread.VolatitleWrite).MemoryBarrier. 通过对SpinLock锁的内部代码分析,彻底了解SpinLock的工作原理. SpinLock内部有一个共享变量 owner 表示锁的所有者是谁.当该锁有所有者时,owner不在为0.当o…
云计算下PAAS的解析一       PaaS是Platform-as-a-Service的缩写,意思是平台即服务. 把服务器平台作为一种服务提供的商业模式.通过网络进行程序提供的服务称之为SaaS(Software as a Service),而云计算时代相应的服务器平台或者开发环境作为服务进行提供就成为了PaaS(Platform as a Service).所谓PaaS实际上是指将软件研发的平台(计世资讯定义为业务基础平台)作为一种服务,以SaaS的模式提交给用户.因此,PaaS也是Saa…
用Eclipse做一个后台项目,但是数据库不想放在本地电脑,于是买了一个腾讯云服务器(学生有优惠,挺便宜的),装上MySQL数据库,但是测试连接的时候,发现总是连接不是上,但是本地数据库可以连接,于是上网搜索发现,mysql 数据库默认的连接只能在本机连接,远程连接必须授权. 远程连接权限配置: 进到你的MySQL\MySQL Server 5.5\bin文件夹下(注:Windows操作系统下doc命令进入) C:\Program Files\MySQL\MySQL Server 5.5>cd…
环境 windows7 + VS2010 + QT5.2_opengl 配置开发环境 1.安装VS2010 2.安装QT 5.2 QT网站:http://qt-project.org/downloads 下载并安装QT5.2:Qt 5.2.1 for Windows 32-bit (VS 2010, OpenGL, 517 MB) 3.安装Visual Studio Add-in for QT5 下载地址:Visual Studio Add-in 1.2.2 for Qt5 4.配置VS 201…
sqlalchemy mark-deleted 和 python 多继承下的方法解析顺序 MRO 今天在弄一个 sqlalchemy 的数据库基类的时候,遇到了跟多继承相关的一个小问题,因此顺便看了一下 MRO mark-deleted 在 sqlalchemy 中的实现 在做数据库的类时,由于重要的数据都不能直接删除,需要使用 mark-deleted 的方式,即在数据库中保留一个 deleted 的标记字段,根据这个标记来区分数据是否已被标记删除.被 mark-deleted 的数据,在普通…
原文地址 http://www.jb51.net/article/33640.htm 在通过Javascript实现客户端和服务端的交互时,有时候需要对操作系统进行判断,以便实现不同操作系统下的兼容性,比如:我们有一个网站, 在Windows XP下浏览效果良好,但是到了Ubuntu下,由于许多特性不同,会造成在浏览上的细微差异,甚至会影响到良好的用户体验.这个时候我们就需要利用 Javascript对操作系统的类型以及某些特性进行判断,分而治之,从而实现网站在跨平台浏览时候保持良好的用户体验.…
摘要: 安全防护:在Linux操作系统下备份恢复技术的应用  原文参见:http://linux.chinaunix.net/techdoc/system/2005/12/19/925898.shtml www.rising.com.cn  2005-5-31 9:57:00  信息源:中科院计算所软件... 安全防护:在Linux操作系统下备份恢复技术的应用  原文参见:http://linux.chinaunix.net/techdoc/system/2005/12/19/925898.sh…
一. VS调试在Win7(vista系列)操作系统下 HttpListener无法绑定多个 指定IP.端口问题 来自:http://www.cnblogs.com/ryhan/p/4195693.html 现象:System.Net.HttpListenerException (0x80004005): 拒绝访问. 原因:VS IDE 权限不够(生成的产物权限也会不够),提升UAC权限即可解决 步骤: 1.选中对应Project,右键添加->新增应用程序清单文件 app.manifest 2.将…