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

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

首页 / 操作系统 / Linux

Java对管程的支持

Java对管程的支持

管程的概念管程 (英语:Moniters,也称为监视器) 是一种程序结构,结构内的多个子程序(对象或模块)形成的多个工作线程互斥访问共享资源。这些共享资源一般是硬件设备或一群变量。管程实现了在一个时间点,最多只有一个线程在执行管程的某个子程序。与那些通过修改数据结构实现互斥访问的并发程序设计相比,管程实现很大程度上简化了程序设计。管程提供了一种机制,线程可以临时放弃互斥访问,等待某些条件得到满足后,重新获得执行权恢复它的互斥访问。一个管程包含:多个彼此可以...
二分查找算法 Java

二分查找算法 Java

提到查找算法,最经典的就是二分查找算法了。在二分查找时要在有序的数据里查找目标target,先取中间元素与target比较,当target小于中间元素的时候,则搜索数组的前半部分,target大于中间元素时,则取数组的后半部分。重复整个搜索的过程将左半部分与有半部分当作子数组继续查找,直到找到元素或到子数组的大小为0停止。原理上很简单却有较多细节,尤其是数据边界的取值是否会越界,while循环的条件。Golang二分查找算法的简单实现 http://www...
Cocos2d-x3.2实现虚拟摇杆多点触摸

Cocos2d-x3.2实现虚拟摇杆多点触摸

Cocos2d-x3.2实现虚拟摇杆多点触摸本文重点不是虚拟摇杆,而是多点触摸,一个Layer控制虚拟摇杆一个Button控制跳跃一个Button控制攻击在ios平台若想实现多点触摸,首先需要设置uiview的支持,默认是不支持的如下图 最后一行:结束剖析cocos2d-x之Action实现 http://www.linuxidc.com/Linux/2013-04/82436.htmUbuntu下cocos2d-x开发环境搭建及配置 http://www...
理解Java中的volatile关键字

理解Java中的volatile关键字

Java语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量。这两种机制的提出都是为了实现代码线程的安全性。Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是 synchronized 的一部分。Java编程思想(第4版) 中文清晰PDF完整...
Java利用httpasyncclient进行异步HTTP请求

Java利用httpasyncclient进行异步HTTP请求

前段时间有个需求在springmvc mapping的url跳转前完成一个统计的业务。显然需要进行异步的处理,不然出错或者异常会影响到后面的网页跳转。异步的方式也就是非阻塞式的,当异步调用成功与否程序会接着往下执行,不必等到输入输出处理完毕才返回。主要用到httpasyncclient-4.0.1.jar,httpclient-4.3.2.jar,httpcore-4.3.2.jar,httpcore-nio-4.3.2.jar,commons-loggi...
排序总结之选择式排序

排序总结之选择式排序

一,直接选择排序介绍:直接选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。选择排序的主要优点与数据移动有关。如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,它们当中至少有一个将被移到其最终位置上,因此对n个元素的表进行排序...
排序总结之基数排序

排序总结之基数排序

基数排序(radix sort)是属于“分配式排序”(distribution sort),基数排序又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为O (nlog(r)m),其中r为所采取的基数,而m为堆数,在某些时候,基数排序法的效率高于其它...
排序总结之插入式排序

排序总结之插入式排序

算法概述:插入排序(Insertion Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序),因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。插入排序主要分为三种,即直接插入,二分插入(利用二分法来减少比较次数),希尔排序(又称缩小增量排序)插入的主...
深入理解C语言中的移位运算

深入理解C语言中的移位运算

说明:本文主要摘录自《深入理解计算机系统》第二章信息的表示与处理。移位运算: C语言还提供了一组移位运算,以便向左或者向右移动位模式。对于一个位表示为[xn-1,xn-2,…,x0]的操作数x,C表达式x<<k会生成一个值,其位表示为[xn-k-1,xn-k-2,…,x0,0,…,0]。也就是说,x向左移动k位,丢弃最高的k位,并在右端补k个0。移位量应该是一个0~n-1之间的值。移位运算是从左至...
Android应用实现多语言切换

Android应用实现多语言切换

关于Android应用实现多语言切换,有好几种办法,网上也搜到很多资料,这里有个简单有效的办法。步骤如下:在资源文件中新建一个文件夹values-en,在里面新建一个strings.xml,把默认values文件夹中的strings.xml中的内容拷贝一份到values-en中的strings.xml,再把该文件夹中的中文内容转换为英文,例如<string name="set">设置</string>转换为<string na...
2015腾讯校园招聘软件测试部分笔试题

2015腾讯校园招聘软件测试部分笔试题

2015腾讯校园招聘软件测试部分笔试题1、计算机系统中CPU中的base寄存器和limit寄存器的作用是()2、操作系统不执行以下哪个操作()A 分配内存 B 输出/输入 C 资源回收 D 用户访问数据库资源3、以下哪个是用于用户拨号认证的()A PPTP B IPSec C L2P D CHAP4、下列哪一项用于产生数字签名()A 接收方的私钥B 发送方的私钥C 发送方的公钥D 接收方的公钥5、以下哪个不属于单向哈希表的特征()A 它把任意长度的信息转换...
C语言中的声明与定义的区别

C语言中的声明与定义的区别

1、对于下面的声明语句int a;如果其位置出现在所有的函数体之外,那么它就被称为外部对象a的定义。这个语句说明了a是一个外部整型变量,同时为a分配了存储空间。因为外部对象a并没有被明确指定任何初始值,所以它的初始值默认为0(某些系统中的连接器对以其他语言编写的程序并不保证这一点,C编译器有责任以适当方式通知连接器,确保未指定初始值的外部变量初始化为0)。2、又如下面的声明语句:int a = 7;在定义a的同时也为a明确指定了初始值。这个语句不仅为a分配...
二分查找中的死循环

二分查找中的死循环

二分算法是我们经常会用到的一个算法。它是分治法的一个应用。不过,虽然他写起来貌似很简单,但是却很容易写错。下面我们讨论一下二分的死循环问题。(这里讨论的是整数的二分问题,浮点数的二分不容易死循环)1.查找的元素确定,值唯一或者不存在这种情况等下,我们的流程分为三个分支:(相等、小于、大于)。这类不容易死循环,代码如下:if ( data[mid] == key ) return mid;if ( data[mid] > key ) r = mid...
<< 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 >>