Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器 软件资源

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 操作系统 / Linux

C++11 内存模型详解(续)

C++11 内存模型详解(续)

可见性与乱序在说到内存模型相关的东西时,我们常常会说到两个名词:乱序与可见性,且两者经常交错着使用,容易给人错觉仿佛是两个不同的东西,其实不是这样,他们只是从不同的角度来描述一个事情,本质是相同的。比如说,我们有如下代码:atomic<int> g_payLoad = {0};atomic<int> g_guard = {0};// thread 0void foo1(){g_payLoad.store(42, memory_ord...
Apple iOS安全措施绕过漏洞(CVE-2014-4457)

Apple iOS安全措施绕过漏洞(CVE-2014-4457)

发布日期:2014-11-17更新日期:2014-11-21受影响系统:Apple iOS < 8.1.1描述:BUGTRAQ ID: 71143CVE(CAN) ID: CVE-2014-4457OS X(前称Mac OS X)是苹果公司为麦金塔电脑开发的专属操作系统的最新版本。iOS是由苹果公司为移动设备所开发的操作系统,支持的设备包括iPhone、iPod touch、iPad、Apple TV。Apple iOS在调试功能的实现上存在权限问题...
C++ 模板元编程学习心得体会

C++ 模板元编程学习心得体会

快速翻了一遍传说中的、大名鼎鼎的 modern c++ design,钛合金狗眼顿时不保,已深深被其中各种模板奇技淫巧伤了身。。。论语言方面的深度,我看过的 c++ 书里大概只有 insight c++ object model 能与之一战吧?难怪 Herb 老喜欢调侃 Andrei 在模板方面是个可怕的家伙,就从这本书的质量来看,Andrei 当之无愧。c++ 模板元编程的力量远比第一眼印象里所能想像得要强大,当然,这个结论并不明显,很多时候人们也就拿模...
C# 6.0 的新特性

C# 6.0 的新特性

本文的内容包括引入C#6.0中的新的语言特性有哪些. 还有已经被引入的代码名称为 “Roslyn”新编译器. 编译器是开放源码的,并且可以从 codeplex 网站的这个地址下载到源代码:https://roslyn.codeplex.com/.C# 6.0 中的新特性我们可以对这些新特性一个一个的进行讨论,而首先要列出 C# 6.0 中这些特性的一个清单自动的属性初始化器 Auto Property Initializer主构造器...
C++程序内存泄漏检测方法

C++程序内存泄漏检测方法

一、前言在Linux平台上有valgrind可以非常方便的帮助我们定位内存泄漏,因为Linux在开发领域的使用场景大多是跑服务器,再加上它的开源属性,相对而言,处理问题容易形成“统一”的标准。而在Windows平台,服务器和客户端开发人员惯用的调试方法有很大不同。下面结合我的实际经验,整理下常见定位内存泄漏的方法。注意:我们的分析前提是Release版本,因为在Debug环境下,通过VLD这个库或者CRT库本身的内存泄漏检测函数能够...
Android Native jni 编程入门

Android Native jni 编程入门

在某些情况下,Java编程已经不能满足我们的需要,比如一个复杂的算法处理,这时候就需要用到jni(java native interface)技术;jni 其实就是java和c/cpp之间进行通信的一个接口规范,java可以调用c/cpp里面的函数,同样,c/cpp也可以调用java类的方法;jni开发工具ndk的安装:在最新的ndk版本中,安装ndk很简单,只需要装ndk的路径配置到系统环境变量中即可;在编译的时候,进入工程根目录;执行命令 ndk-bu...
Java命令模式(Command模式)

Java命令模式(Command模式)

Command模式是最让我疑惑的一个模式,我在阅读了很多代码后,才感觉隐约掌握其大概原理,我认为理解设计模式最主要是掌握起原理构造,这样才对自己实际编程有指导作用。Command模式实际上不是个很具体,规定很多的模式,正是这个灵活性,让人有些confuse。Command定义不少Command模式的代码都是针对图形界面的,它实际就是菜单命令,我们在一个下拉菜单选择一个命令时,然后会执行一些动作。将这些命令封装成在一个类中,然后用户(调用者)再对这个类进行操...
Android 使用NDK编译sipdroid Library

Android 使用NDK编译sipdroid Library

sipdroid是一款开源的运行于Android平台上的voip,目前支持音频和视频通话;项目拖管地址:http://code.google.com/p/sipdroid/下载源代码,导入eclipse的时候会有一些小错误,但都比较容易更改,这些就不再重复;在命令行窗口下进行项目所在文件下,执行ndk-build命令(如果没有添加ndk到系统环境变量需要先进行配置);C:UserszyDesktopAndroid SipDroid>ndk-build...
Apple iPhone沙盒安全限制绕过漏洞

Apple iPhone沙盒安全限制绕过漏洞

发布日期:2014-11-11更新日期:2014-11-24受影响系统:Apple iPhone描述:BUGTRAQ ID: 71219Apple iPhone是苹果公司研发的智能时尚手机,它搭载苹果公司研发的iOS操作系统。Apple iPhone在实现上存在安全限制绕过漏洞,攻击者可利用此漏洞绕过沙盒限制。<*来源:lokihardt@ASRT*>建议:厂商补丁:Apple-----目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用...
多个Asterisk产品ConfBridge Dialplan函数远程权限提升漏洞

多个Asterisk产品ConfBridge Dialplan函数远程权限提升漏洞

发布日期:2014-11-17更新日期:2014-11-25受影响系统:Asterisk Asterisk Open Source描述:BUGTRAQ ID: 71228Asterisk是一款实现电话用户交换机(PBX)功能的自由软件、开源软件。Asterisk Open Source、Certified Asterisk在ConfBridge Dialplan的实现上存在远程权限提升漏洞,远程攻击者可利用此漏洞获取提升的权限并执行未授权操作。<*来...
Android 开机自动运行和添加删除桌面快捷方式

Android 开机自动运行和添加删除桌面快捷方式

<一>开机自启动当Android启动时,会发出一个系统广播,内容为ACTION_BOOT_COMPLETED,它的字符串常量表示为android.intent.action.BOOT_COMPLETED。只要在程序中“捕捉”到这个消息,再启动之即可。我们要做的是做好接收这个消息的准备,而实现的手段就是实现一个BroadcastReceiver。1.首先定义一个BroadcastReceiver,覆写其onReceive(...
Android Touch消息传递机制探究分析

Android Touch消息传递机制探究分析

在Android中,消息的传递控制主要是通过两个方法共同配合使用来对用户的触摸消息进行分发的,下面就来看看这两个方法;onInterceptTouchEvent:此方法定义于ViewGroup中,顾名思义,这个方法是用于ViewGroup拦截(intercept)触摸消息的;onTouchEvent:此方法定义于View中,用于处理用户的触摸事件;下面来看这两个方法的定义原型;public boolean onInterceptTouchEvent(Mot...
Xen MMU_MACHPHYS_UPDATE处理内存泄露拒绝服务漏洞

Xen MMU_MACHPHYS_UPDATE处理内存泄露拒绝服务漏洞

发布日期:2014-11-20更新日期:2014-11-25受影响系统:XenSource Xen >= 3.2.x描述:BUGTRAQ ID: 71207Xen是一个开源虚拟机监视器,由剑桥大学开发。Xen 3.2.x及更高版本在实现上存在拒绝服务漏洞,可以访问HVM客户端系统的攻击者可利用此漏洞使主机操作系统崩溃。<*来源:Andrew Cooper*>建议:厂商补丁:XenSource---------目前厂商已经发布了升级补丁以修...
Android working with Volley 详解

Android working with Volley 详解

Volley是google官方推出的一个开源网络访问库,在项目中直接使用它,而不需要写一大堆的重复的代码;项目主页:https://android.googlesource.com/platform/frameworks/volleyVolley中一个重要的类就是RequestQueue,不用多说,只看命名就知道它是一个请求队列,用于存放我们添加进去的网络请求;我们可以通过Volley.newRequestQueue(Context context);获取...
<< 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 >>