搜索到与相关的文章
编程技术

并发中的遍历

在开发多线程并发的程序时,对列表进行遍历是一个很常见的操作。比如说在观察者模式中,当某个事件发生时,就需要通知到对应的观察者进行事件的处理,这里就需要对观察者列表进行遍历,逐一触发观察者进行事件的处理。那么,如何保证并发中的遍历操作的原子性呢?大概有下面几种方式:1.首先,最容易想到的肯定是使用JAVA内置的同步机制-synchronized,把整个遍历操作当作一个原子操作。synchronized(lock){for(Observerob:observe

系统 2019-08-29 23:06:54 2417

编程技术

创建型设计模式--单例模式

单例模式(Singleton)在一个系统要求一个类只有—个实例时才应当使用单例模式单例类(singleton)可以保证系统中只可能由该类的一个对象,而且这个对象由类自行初始化懒汉式单例类(1)这个类被加载时,静态变量singleton会被初始化,此时类的私有构造器会被调用,单例类的惟一实例就被创建出来了。(2)Java语言中单例类的—个最重要的特点是类的构造于是私有的,从而避免外界利用构造子直接创建出任意多的实例。由于构造于是私有的,因此此类不能被继承。p

系统 2019-08-29 23:06:03 2417

编程技术

Hibernate加载其数据库配置

Hibernate加载其配置文件hibernate.properties和hibernate.cfg.xml,常用xml文件比较直观,方便管理,Hibernate是一个流行的开源对象关系映射工具,方便连接不同数据库,更换数据库,只要修改Hibernate配置文件,大度减少项目的维护。完整的配置如下:

系统 2019-08-29 22:49:59 2417

Python

python 日期

dt=datetime.now()print'(%Y-%m-%d%H:%M:%S%f):',dt.strftime('%Y-%m-%d%H:%M:%S%f')print'(%Y-%m-%d%H:%M:%S%p):',dt.strftime('%y-%m-%d%I:%M:%S%p')print'%%a:%s'%dt.strftime('%a')print'%%A:%s'%dt.strftime('%A')print'%%b:%s'%dt.strftime('

系统 2019-08-29 22:36:23 2417

编程技术

hashMap

HashMap通过键的hashCode来快速的存取元素。当不同的对象hashCode发生碰撞时,HashMap通过单链表来解决,将新元素加入链表表头,通过next指向原有的元素。单链表在Java中的实现就是对象的引用(复合)。publicVput(Kkey,Vvalue){//处理key为null,HashMap允许key和value为nullif(key==null)returnputForNullKey(value);//得到key的哈希码inthas

系统 2019-08-29 22:36:11 2417

Oracle

Oracle存在修改,不存在插入记录

原文:http://www.cnblogs.com/xcj26/p/3452628.html接触编程以来,在数据存储方面一直用的MSSQL。Oracle这名字对我来说是如此的熟悉,但是对其内容却很陌生,最近公司的一个项目用起了Oracle,所以也开始高调的用起了Oracle。在没有接触Oracle之前,听很多人都说Oracle的语法与MSSQL差不多,我在朋友圈里也帮着吹嘘这个观点。告诉朋友们,Oralce与MSSQL差不多,确实,貌似一看CRUD几乎没区

系统 2019-08-29 22:32:38 2417

编程技术

数据结构课程设计---魔王语言解释

[问题描述]有一个魔王总是使用自己的一种非常精练而又抽象的语言讲话,没有人能听得懂,但他的语言是可以逐步解释成人能听懂的语言,因为他的语言是由以下两种形式的规则由人的语言逐步抽象上去的:(1)α->β1β2…βm(2)(θδ1δ2…δn)->θδnθδn-1…θδ1θ在这两种形式中,从左到右均表示解释。试写一个魔王语言的解释系统,把他的话解释成人能听得懂的话。[基本要求]用下述两条具体规则和上述规则形式(2)实现。设大写字母表示魔王语言的词汇;小写字母表示

系统 2019-08-29 22:31:27 2417

编程技术

更好地使用Google的服务

更好地使用Google的服务5/10/20094:55:12PMhttp://www.kenengba.com/post/1054.html更好地使用Google的服务写于2009-05-09–10:04上午|作者:JasonNg|类别»搜索引擎网上有很多关于Google的使用技巧,大多数不外乎是传授如何使用搜索语法,比如使用“+”号、“-”号等。在刚才做的一份关于可能吧读者的调查里,很多人喜欢看技巧型文章。这篇文章里说的内容都和Google相关,但并不是

系统 2019-08-29 22:27:05 2417

编程技术

一个典型的从下部弹上来的Dialog

典型的看图importandroid.app.Dialog;importandroid.content.Context;importandroid.os.Bundle;importandroid.util.DisplayMetrics;importandroid.view.Gravity;importandroid.view.View;importandroid.view.Window;importandroid.view.WindowManager;im

系统 2019-08-29 22:17:45 2417

编程技术

从漫画看源码管理方式

一直以来我都比较在意源码的管理,怎么说也是自己辛苦写的东西,改得又很频繁,没有个好方法好工具管理起来还真是不放心。最近几年主要是用分布式版本控制工具Mercurial(HG),个人觉得还是挺好用的。今天看到有人发了一张漫画,转帖如下:所附的文字说明是:作为一名项目主管,你知道为什么要尽快的抛弃SVN而转向Git(或HG、Bzr等),答案就在这幅漫画里:当时我就看着面熟,令狐指出这幅画其实是修改版,原版是说程序在编译中。不过这不重要,重点在于漫画表现的是事实

系统 2019-08-29 22:14:52 2417