编程技术

用happen-before规则重新审视DCL

转载自----http://lifethinker.iteye.com/blog/260515编写Java多线程程序一直以来都是一件十分困难的事,多线程程序的bug很难测试,DCL(DoubleCheckLock)就是一个典型,因此对多线程安全的理论分析就显得十分重要,当然这决不是说对多线程程序的测试就是不必要的。传统上,对多线程程序的分析是通过分析操作之间可能的执行先后顺序,然而程序执行顺序十分复杂,它与硬件系统架构,编译器,缓存以及虚拟机的实现都有着很

系统 2019-08-29 23:06:36 2197

编程技术

程序员的七种武器

世界上有两件事情,需要一辈子的努力。第一是学习,第二是锻炼。其实这本是说明一个问题:每个人在提高自己能力这件事情上,需要持续不断地努力。以最典型的例子来看,只有通过学习,程序员才能保证不断进步。一方面我们学习新的软件技术和更新速度极快的业界新名词;另外一方面,我们也需要不断加强基本技能的巩固。在这样的前提下,“程序员的七种武器”这个选题就应运而生了。撇开众多软件开发人员的基本素质(学习能力、解决问题能力等)不谈,我们希望能够通过本期专题来让读者更加清晰地认

系统 2019-08-29 23:00:02 2197

编程技术

使用JXL读取Excel表格,拷贝、更新Excel工作薄

Java代码/***

读取Excel表格,拷贝、更新Excel工作薄

*

Description:可以读取Excel文件的内容,更新Excel工作薄*

*

Copyright:Copyright(c)Corparation2005

*

程序开发环境为eclipse

*@authorWalker*@version1.0*/packagecn.com.yitong.xls;importjava.io.File;impor

系统 2019-08-29 22:53:46 2197

编程技术

微内核流程引擎(IVR导航)的设计与实现(一)

此次开发在***会议项目之后进行的优化。主要内容:1、对在这次开发中发现的问题进行解决。2、对流程引擎进行重构。3、扩展部分流程引擎的功能。4、进行结构调整。5、单元测试。测试驱动。调整总体结构目前结构主要的问题在于,流程内核、应用服务器的服务,业务逻辑都一个动态库中,代码杂糅在一起,不利于后面的维护,重用,以及开发。现在要做的事情是把它分成三层:1、FlowEngineCore流程内核层主要的功能是建立一个流程模型,包括:1)解析脚本,生成流程。2)实现

系统 2019-08-29 22:53:25 2197

编程技术

图像转字符串

学习地址写道http://myrpsh.spaces.live.com/blog/cns!10BEB08F8F3CBC84!10449.entry?wa=wsignin1.0http://www.photo2text.com/http://topic.csdn.net/t/20060729/21/4914143.html#http://www.cnblogs.com/yangbin1005/archive/2008/05/14/1197347.htmlht

系统 2019-08-29 22:07:18 2197

编程技术

ESBasic 可复用的.NET类库(14) -- 优先级管

1.缘起:假设我们的订单处理系统所要处理的订单是有优先级的,也就是说,不同的订单类型所要求被处理的紧迫程度不同,对那些优先级高的注单要先处理,对于优先级低的注单可稍后处理。对于处于同一优先级的订单了,就按照其到达的先后顺序进行处理。这是一个典型的管理具有优先级的对象的需求,注单就是具有优先级(WithPriority)的对象。我设计了ESBasic.ObjectManagement.Managers.IPriorityManager优先级管理器(确切地说,

系统 2019-08-29 22:05:26 2197

编程技术

分析师称Google扩张过快 很可能迷失方向

仅仅在11年前,Google推出了一种搜索引擎业务,并很快成长为互联网行业的庞然大物。Google这个名字已经成为搜索的代名词,是互联网伟大的成功故事之一。今天,Google拥有64%的搜索市场份额。此外,该公司已升级了多年来的搜索工具,增加Google地图和Google地球。该公司还向市场推出了托管应用服务,如Gmail应用软件。但是,Google显然有更大的商业梦想。最近,Google宣布针对IE浏览器和Windows操作系统,开发自主品牌的Chrom

系统 2019-08-29 22:03:33 2197

编程技术

Spring使用JdbcTemplate操作数据库---写数据篇

首先使用mysql建立数据库,并建立表如下:CREATETABLE`login`(`username`varchar(10)defaultNULL,`passwd`varchar(10)defaultNULL,`address`varchar(10)defaultNULL)ENGINE=InnoDBDEFAULTCHARSET=gb2312;Spring的JDBC框架承担了资源管理和错误处理的重担,使你的JDBC代码非常干净,这就是spring为我们提供的

系统 2019-08-12 09:30:26 2197

Python

Python中的上下文管理器

Python中的上下文管理器,实际上就是实现了上下文管理协议的对象。在Python中打开文件的时候,我们需要确保文件被使用完毕之后,对其进行关闭操作——调用文件对象的close()方法。如果不使用上下文管理器,经典的处理方式就是将close()方法的调用放在一个finally语句中:f=open("www.log")try:print("dosomethingwithfile")finally:f.close()这里finally的唯一作用就是确保文件对象

系统 2019-09-27 17:56:31 2196

Python

python ChainMap 合并字典的实现步骤

字典是Python语言中唯一的映射类型。映射类型对象里哈希值(键,key)和指向的对象(值,value)是一对多的的关系,通常被认为是可变的哈希表。字典对象是可变的,它是一个容器类型,能存储任意个数的Python对象,其中也可包括其他容器类型。字典类型与序列类型的区别:1.存取和访问数据的方式不同。2.序列类型只用数字类型的键(从序列的开始按数值顺序索引);3.映射类型可以用其他对象类型作键(如:数字、字符串、元祖,一般用字符串作键),和序列类型的键不同,

系统 2019-09-27 17:54:02 2196

Python

为什么学习人工智能要首选Python?

随着智能时代的来临,常常听到人说,想玩转人工智能,就必须学好Python。可是鲜少有人去深处挖掘原因,人工智能与Python语言的关系。为什么不能用其他语言,如PHP、C++之类?那今天六星教育就来讲讲这里面的门道!首先,我们得清楚什么是Python?它能干嘛?Python是一种计算机程序设计语言,它有着丰富和强大的库,常被称为“强力胶语言”,可以把用其它语言编写的各类模块很方便快捷地联接在一起。Python能应用于很多方面,但是最重要的一点就是它是人工智

系统 2019-09-27 17:53:42 2196

Python

python+爬虫+微信机器人 打造属于你的网购价格监督利器

写在最前程序是为人类服务的,最近正好身边小伙伴们在做球衣生意,当然是去nikenba专区购买了,可是有些热门球衣发布几分钟就被抢完,有些折扣球衣也是很快就被抢售一空,那么我们只能靠自己的眼睛一直盯着网站吗?NoNoNo,作为计算机专业的学生,怎么能为这种事情浪费时间呢?那肯定想法就是写爬虫自动比对价格啊,后来又在想,爬虫数据也是在PC端啊,该怎么实时提醒我们呢?再弄一个微信机器人发送数据不就可以了吗?说干就干,代码开撸先看下效果:准备工作:首先本文使用py

系统 2019-09-27 17:53:30 2196

Python

关于Python中的错误与异常,你是否了解的够仔细?

每次版本结束都描述这着同样的错误,相似的问题,但始终没见解决。所以今天,我就来总结下Python的错误与异常!异常与错误错误语法错误可以通过IDE或者解释器给出提示的错误opentxt('a.jpg','r')逻辑错误语法层面没有问题,但是自己代码的逻辑有问题ifage>18:print('未成年')异常多指在程序执行过程中,出现的未知错误,语法和逻辑本身是正确的。可以通过代码进行处理或修复异常分类除零异常(ZeroDivisionError):1/0名称

系统 2019-09-27 17:52:47 2196

Python

Python如何筛选序列中的元素的方法实现

本篇文章给大家带来的内容是关于Python如何筛选序列中的元素,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。1、需求序列中含有一些数据,我们需要提取其中的值或根据某些标准对序列做删减,2、解决方案要筛选序列中的数据,通常最简单的方法是使用列表推导式。例如:myList=[1,4,-5,10,-7,2,3,-1]print([nforninmyListifn>0])print([nforninmyListifn<0])结果:[1,4,10,

系统 2019-09-27 17:52:12 2196