05 2015 档案

摘要:androidlineLayout显示通过java代码来显示隐藏这个布局和里面的控件可以用LinearLayout jishuan = (LinearLayout)findViewById(R.id.jishuan);jishuan.setVisibility(View.VISIBLE);//显示j... 阅读全文
posted @ 2015-05-28 15:34 techfox 阅读(342) 评论(0) 推荐(0) 编辑
摘要:android:weight属性能够根据手机高宽按设定比例显示控件如:宽度上按比例显示 注意现在android:layout_width="0dp"最终3个按钮显示的宽度比例为1:3,和weight一样,值大的权高,显示宽度大然而如果把android:layout_width... 阅读全文
posted @ 2015-05-28 15:33 techfox 阅读(230) 评论(0) 推荐(0) 编辑
摘要:android自定义按钮1》定义按钮布局文件 2》继承布局文件package com.widget;import android.content.Context;import android.graphics.Bitmap;import android.util.Attribu... 阅读全文
posted @ 2015-05-28 15:32 techfox 阅读(97) 评论(0) 推荐(0) 编辑
摘要:1.android简单按钮监听----单个监听start = (Button)findViewById(R.id.btnStart);start.setOnClickListener(new OnClickListener(){ @Override public void onClick... 阅读全文
posted @ 2015-05-28 15:31 techfox 阅读(294) 评论(0) 推荐(0) 编辑
摘要:android实现手机震动1.在AndroidManifest.xml中添加震动权限 2.实现震动package uni.vibrator;import android.app.Activity;import android.content... 阅读全文
posted @ 2015-05-28 15:30 techfox 阅读(246) 评论(0) 推荐(0) 编辑
摘要:安卓开发中应注意内存的释放,一旦加载图片或其他占用太多内存,此时就会发生OOM错误,即内存泄露。在开发中,尤其应注意图片资源的释放。1。背景图片和ImageView释放------尤其注意图片资源如: 先获取图片控件:public ImageView imageView;public Linea... 阅读全文
posted @ 2015-05-27 15:42 techfox 阅读(495) 评论(0) 推荐(0) 编辑
摘要:package com.dream.apm;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import... 阅读全文
posted @ 2015-05-27 15:40 techfox 阅读(219) 评论(0) 推荐(0) 编辑
摘要:在一个项目中我们可能会需要用到相同的布局设计,如果都写在一个xml文件中,代码显得很冗余,并且可读性也很差,所以我们可以把相同布局的代码单独写成一个模块,然后用到的时候可以通过 标签来重用layout代码。btn.xml: 复制代码main.xml 复制代码TestActivity:... 阅读全文
posted @ 2015-05-27 15:39 techfox 阅读(544) 评论(0) 推荐(0) 编辑
摘要:在 实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。不同点是LayoutInflater是用 来找res/layout/下的xml布局文件,并且实例化;而findViewById()是找xml布局文件下的具体widget控件(如 Button、... 阅读全文
posted @ 2015-05-27 15:37 techfox 阅读(100) 评论(0) 推荐(0) 编辑
摘要:Android应用经常会和服务器端交互,这就需要手机客户端发送网络请求,下面介绍常用的两种网络请求方式POST,GET。首先要区别POST和GET请求1. GET是从服务器上获取数据,POST是向服务器传送数据。2. GET是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个... 阅读全文
posted @ 2015-05-27 15:35 techfox 阅读(349) 评论(0) 推荐(0) 编辑
摘要:有了前面做够的准备,我们现在可以来做登入了。首先打开我们的login.js,在登入按钮事件那里写上function login() { //用户登入方法---表单提交 if(formPanel.form.isValid()){ Ext.MessageBox.show({ ... 阅读全文
posted @ 2015-05-26 17:00 techfox 阅读(142) 评论(0) 推荐(0) 编辑
摘要:这一篇博客将介绍前后台交互,ejb配置和数据查询,为实现用户登入做足准备。首先我们来配置ejb。1.在src目录下建立jboss-ejb-client.properties文件内容为:remote.connectionprovider.create.options.org.xnio.Options.... 阅读全文
posted @ 2015-05-26 16:59 techfox 阅读(210) 评论(0) 推荐(0) 编辑
摘要:前一篇博客我们完成了登入页面的编写。现在我们就来实现用户登入.。我们分步骤来1. 首先我们要在数据库了创建一张用户表manage表:create table manage(idraw(16) default sys_guid() primary key,username varchar2(20),p... 阅读全文
posted @ 2015-05-26 16:58 techfox 阅读(165) 评论(0) 推荐(0) 编辑
摘要:上一篇j2ee博客我们已经把jboss整合进开发工具eclipse里,并建立好了开发项目Person。今天我们就要开始项目的开发了。今天主要讲用extjs4制作登入界面.首先我们要把extjs的包导入到项目WenContent下导入之前先设置项目右键项目点击Properties取消第一和第四个钩,不... 阅读全文
posted @ 2015-05-26 16:57 techfox 阅读(250) 评论(0) 推荐(0) 编辑
摘要:离上一次开发J2EE已经有一段时间了,项目完成后没有及时总结。现在重新做一个简单的人员登入来总结J2EE吧。不要小看这登入,麻雀虽小五脏俱全啊。以便自己日后参考和供新手学习系统框架:服务器:JBOSS7.1数据库:oracle11g前台:extjs4.2(对于前台设计头痛的可以选择,可以省去很多cs... 阅读全文
posted @ 2015-05-26 16:55 techfox 阅读(792) 评论(0) 推荐(0) 编辑
摘要:Oracle提示错误消息ORA-28001: the password has expired问题产生原因:是由于Oracle 11G的新特性所致, Oracle 11G创建用户时缺省密码过期限制是180天, 如果超过180天用户密码未做修改则该用户无法登录。解决方法:首先,以SYS DBA身份进入... 阅读全文
posted @ 2015-05-25 14:43 techfox 阅读(171) 评论(0) 推荐(0) 编辑
摘要:oracle的自增主键需要用序列和触发器来实现,我们首先创建一张表:主键为int,实现自增createtableTEST(ID intPRIMARYKEY,test1 varchar2(20),test2 varchar2(20),test3 varchar2(20))创建一个序列:create s... 阅读全文
posted @ 2015-05-25 14:41 techfox 阅读(760) 评论(0) 推荐(0) 编辑
摘要:安装好oracle后,我们可以去服务那看到多了好几个oracle的服务,我们可以把这些服务改成手动启动,如果是自动的话,开机就会自动启动,会占用系统大量内存,在使用oracle时,也不用所有服务都开,只需要开图上那两个服务OracleService和OracleListener 阅读全文
posted @ 2015-05-25 14:39 techfox 阅读(119) 评论(0) 推荐(0) 编辑
摘要:前面的博客介绍了用序列和触发器实现自增主键,主要是为了避免发生主键相同而出错。现在给大伙介绍另外的一钟防止主键相同的方法。唯一主键使用SYS_GUID() 生成32位的唯一编码。来生成唯一主键例如:create table test(idraw(16) default sys_guid() prim... 阅读全文
posted @ 2015-05-25 14:38 techfox 阅读(13534) 评论(0) 推荐(1) 编辑
摘要:成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操作。输入help可以看到基本操作命令:show dbs:显示数据库列表show collections:显示当前数据库中的集合(类似关系数据库中的表)show users:显示用户use :切换当前数据库,这和MS... 阅读全文
posted @ 2015-05-25 14:36 techfox 阅读(119) 评论(0) 推荐(0) 编辑
摘要:java字符流的底层还是使用字节流实现的,所以字节流时刻转换为字符流的。转换流主要使用到OutputStreamWriter:将字节输出流转换为字符输出流形式InputStreamReader:将输入的字节流转换为字符流输入形式1.OutputStreamWriter(字节输出流-->字符输出流) ... 阅读全文
posted @ 2015-05-22 16:46 techfox 阅读(355) 评论(0) 推荐(0) 编辑
摘要:java缓冲流本身不具IO功能,只是在别的流上加上缓冲提高效率,像是为别的流装上一种包装。当对文件或其他目标频繁读写或操作效率低,效能差。这时使用缓冲流能够更高效的读写信息。因为缓冲流先将数据缓存起来,然后一起写入或读取出来。所以说,缓冲流还是很重要的,在IO操作时记得加上缓冲流提升性能。 缓冲... 阅读全文
posted @ 2015-05-22 16:45 techfox 阅读(7060) 评论(0) 推荐(2) 编辑
摘要:本篇博客主要介绍java的 字符流FileWirter和FileReader流,主要用于操作文件内容。一.FileWriter(文件输出字符流) FileWriter与FileOutputStream类似,不过FileWriter是字符流,而FileOutputStream是字节流。构造方法:1.p... 阅读全文
posted @ 2015-05-22 16:43 techfox 阅读(669) 评论(0) 推荐(0) 编辑
摘要:java的 IO流即输入输出流,流是一组有顺序的,有起点和终点的字节结合,是对数据传输的总称。即数据在两设备间的传输称为流,流的本质是数据传输。 IO流可以分为字节流和字符流。给出相应的IO结构图:在接下来的一段时间里,将会慢慢介绍各种流的使用,本篇博客先介绍字节流的FileOutputStrea... 阅读全文
posted @ 2015-05-22 16:41 techfox 阅读(221) 评论(0) 推荐(0) 编辑
摘要:java中 “继承”是面向对象软 件技术当中的一个概念。如果一个类A继承自另一个类B,就把这个A称为"B的子类",而把B称为"A的父类"。继承可以使得子类具有父类的各种属性和方 法,而不需要再次编写相同的代码。在令子类继承父类的同时,可以重新定义某些属性,并重写某些方法,即覆盖父类的原有属性和方法,... 阅读全文
posted @ 2015-05-22 16:40 techfox 阅读(3797) 评论(0) 推荐(0) 编辑
摘要:java.util.Arrays类能方便地操作数组,它提供的所有方法都是静态的。静态方法是属于类的,不是属于类的对象。所以可以直接使用类名加方法名进行调用。Arrays作为一个工具类,能很好的操作数组。下面介绍主要使用的几个函数。1.fill方法fill方法主要用来填充数组,这里我们举最简单的int... 阅读全文
posted @ 2015-05-21 12:34 techfox 阅读(215) 评论(0) 推荐(0) 编辑
摘要:一.比较器Comparable和Comparator 上一篇博客介绍了工具类Arrays工具类。我们可以对基本类型的数组调用Arrays.sort()函数来进行数组的排序。排序操作在日常开发中经常要使用到。那么String类和自定义类能不能使用Arrays.sort()来进行排序呢。下面我们来试... 阅读全文
posted @ 2015-05-21 12:32 techfox 阅读(191) 评论(0) 推荐(0) 编辑
摘要:在实际java开发中,我们会经常使用到字符串连接的操作,以前我习惯喜欢用String的‘+’来操作,觉得非常方便好用,最近认真学习了String,StringBuffer和StringBuilder这三个类,才发现使用String来连接字符串,代码性能会很低。下面我们就字符串连接来分析这三种方式。1... 阅读全文
posted @ 2015-05-21 12:31 techfox 阅读(155) 评论(0) 推荐(0) 编辑
摘要:Java的String类在开发时经常都会被使用到,由此可见String的重要性。经过这次认真仔细的学习了java的String类。发现了自己以前开发中对String使用的不足,特写此博客来记录自己对String的学习总结。 首先String不属于8种基本数据类型,String是一个对象。 因为对象的... 阅读全文
posted @ 2015-05-21 12:29 techfox 阅读(233) 评论(0) 推荐(0) 编辑
摘要:java的多态性是面向对象的三大特性之一.(封装,继承,多态),多态是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决... 阅读全文
posted @ 2015-05-21 12:25 techfox 阅读(164) 评论(0) 推荐(0) 编辑
摘要:在Java中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类。内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.class文件,但是前面冠以外部类的类名和$符号。内部类可以间接解决多继承问题,可以使用内部类继承一个类,外部类继承一个类,实现多继承。 内部类主要分为成... 阅读全文
posted @ 2015-05-20 13:50 techfox 阅读(203) 评论(0) 推荐(0) 编辑
摘要:最近要使用java来操作Json数据,虽然Json用过几次,但一直没有好好总结,趁这次来总结一下java操作Json数据。Java操作Json有很多工具包,地址为http://www.json.org/,可以自己上去挑选。 这里我使用第一个org.json,最新源码地址为:https://githu... 阅读全文
posted @ 2015-05-20 13:49 techfox 阅读(13402) 评论(0) 推荐(1) 编辑
摘要:在Java中,每个class都有一个相应的Class对象。也就是说,当我们编写一个类,编译完成后,在生成的.class文件中,就会产生一个Class对象,用于表示这个类的类型信息。Class类是反射的根源。1.获取Class对象得到Class类对象有三种方式1.使用Object类中的getClass... 阅读全文
posted @ 2015-05-20 13:47 techfox 阅读(155) 评论(0) 推荐(0) 编辑
摘要:javaAPI为我们网络通信提供了服务器套接字ServerSocket类和客户端套接字Socket,Socket是网络驱动层提供给应用程序编程的接口和一种机制。下面提供具体实现例子服务端--ServerSocket ServerSocket类实现了服务器的套接字,主要方法ServerSocket(i... 阅读全文
posted @ 2015-05-20 13:46 techfox 阅读(148) 评论(0) 推荐(0) 编辑
摘要:File类是java中表示文件和目录名的抽象表示形式。File类可以实现文件的创建,删除,重命名,获取路径,创建时间等等,是唯一一个与文件本身有关的操作。所以有必要好好学习File类。主要使用方法:1.public File(String pathname)----根据文件路径构造File实例2.p... 阅读全文
posted @ 2015-05-20 13:44 techfox 阅读(157) 评论(0) 推荐(0) 编辑
摘要:第一种:匿名内部类作为事件监听器类大部分时候,事件处理器都没有什么利用价值(可利用代码通常都被抽象成了业务逻辑方法),因此大部分事件监听器只是临时使用一次,所以使用匿名内部类形式的事件监听器更合适,实际上,这种形式是目前是最广泛的事件监听器形式。上面的程序代码就是匿名内部类来创建事件监听器的!!!对... 阅读全文
posted @ 2015-05-19 14:19 techfox 阅读(164) 评论(0) 推荐(0) 编辑
摘要:android,java使用Button 可能都会监听之 当其被点击 就会有函数负责回调 那么其到底是怎么实现的呢?今天要做的就是摸清楚之 为了减少不必要的麻烦 打算extends EditText 并在其上设立监听器[代码 步骤]1. 定义Edit2Text 且extends EditTextpu... 阅读全文
posted @ 2015-05-19 14:17 techfox 阅读(1252) 评论(0) 推荐(0) 编辑
摘要:原文来自 Techfox IT技术论坛1.在block中处理:不过PL/SQL代码只能处理不超过32K的数据,超过这个限制,就无法通过PL/SQL来处理。SQL> SET SERVEROUT ONSQL> BEGIN2 FOR I IN (SELECT * FROM T_LONG) LOOP3 IF... 阅读全文
posted @ 2015-05-19 14:15 techfox 阅读(732) 评论(0) 推荐(0) 编辑
摘要:原文来自 Techfox IT技术论坛1) During INSERT and UPDATE operations, Oracle converts the value to the datatype of the affected column.对于INSERT和UPDATE操作,oracle会把... 阅读全文
posted @ 2015-05-19 14:13 techfox 阅读(443) 评论(0) 推荐(0) 编辑
摘要:这是一个我试验成功的例子,测试环境SLES11SP1。php//更改系统时间function rootCmd($cmd_body){$cmd_head = "su --login root --command";//$cmd_body = "date -s 07/13/2005";$rootpass... 阅读全文
posted @ 2015-05-19 14:09 techfox 阅读(942) 评论(0) 推荐(0) 编辑
摘要:全文搜索,与机器学习领域其他大多数问题不同,是一个 Web程序员在日常工作中经常遇到的问题。客户可能要求你在某个地方提供一个搜索框,然后你会写一个类似 WHERE title LIKE %:query% 的 SQL 语句实现搜索功能。一开始,这是没问题,直到有一天,客户找到你跟你说,“搜索出错啦!”... 阅读全文
posted @ 2015-05-18 14:58 techfox 阅读(189) 评论(0) 推荐(0) 编辑
摘要:在我的前一篇blog中,我介绍了在JavaScript中如何使用文件,具体重点放在如何获得File对象。只有当用户通过上传或者拖拽的方式上传了文件,这些对象才拥有文件的元数据。一旦你有了这些文件,下一步就是从这些文件中读取数据。FileReader 类型FileReader类型有一个单一的工作,就是... 阅读全文
posted @ 2015-05-18 14:54 techfox 阅读(1344) 评论(0) 推荐(1) 编辑
摘要:本文展示了一种技术,它能通过异步下载样式表,以阻止它们的下载阻塞页面的渲染,从而尽可能快的让访问者获取到信息内容。警告! 我发这篇帖子全是好意,但是它并不负责让读它的人意识到下面将会遇到的问题. 社区很快地给了我许多的反馈 (有些反馈我很感激) ,而越来越明显的是这项技术并不如我所希望的那样稳定. ... 阅读全文
posted @ 2015-05-18 14:51 techfox 阅读(1313) 评论(0) 推荐(0) 编辑
摘要:JavaScript简单抽奖程序的实现及代码1.需求说明某公司年终抽奖,需要有如下功能1)可以根据实际情况设置到场人数的最大值2) 点击“开始”,大屏幕滚动,点击“停止”,获奖者的编号出现在大屏幕上3)在界面里显示全部奖项获奖人编号4)不重复获奖5)不会因为输入错误而导致抽奖结果异常。2.代码呈上 ... 阅读全文
posted @ 2015-05-18 14:40 techfox 阅读(866) 评论(0) 推荐(0) 编辑
摘要:现在已经是2014年了,但是对大多数开发人员而言有两件事情仍然是个谜——java垃圾回收以及异性(码农又被嘲笑了)。由于我对后者也不是特别了解,我想我还是试着说说前者吧,尤其是随着Java8的到来,这个领域也发生了许多重大的变化及提升,其中最重要的莫过于持久代(PermGen)的删除以及一些令人振奋... 阅读全文
posted @ 2015-05-18 09:30 techfox 阅读(542) 评论(0) 推荐(0) 编辑
摘要:本文介绍一个在google play上很火爆,好玩的App,如题如图:实现思路:Android中在一个透明的Activity上用SurfaceView绘制闪电,同时加上震动和音效。在touch事件中调用闪电算法。SurfaceView是一个继承自View的类,可以直接从内存或者DMA等硬件接口取得图... 阅读全文
posted @ 2015-05-16 13:46 techfox 阅读(683) 评论(0) 推荐(0) 编辑
摘要:无论何种编程语言c,java。。uml模型经常伴随我们在UML类图中,常见的有以下几种关系:泛化(Generalization),实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)1.泛化(Ge... 阅读全文
posted @ 2015-05-16 13:34 techfox 阅读(133) 评论(0) 推荐(0) 编辑
摘要:语义化这个词在 HTML 中用的比较多,即根据内容的结构化选择合适的标签。其作用不容小觑:赋予标签含义,让代码结构更加清晰,虽然我们可以在标签上添加 class 来标识,但这种通过属性来表示本体的形式会显得不够直接,而且在一定程度上也有冗余。优化搜索引擎(SEO),结构良好的网页对搜索引擎的亲和力是... 阅读全文
posted @ 2015-05-15 15:59 techfox 阅读(126) 评论(0) 推荐(0) 编辑
摘要:简介本文用C#实现了一个最简单的HTTP服务器类,你可以将它嵌入到自己的项目中,或者也可以阅读代码来学习关于HTTP协议的知识。背景高性能的WEB应用一般都架设在强大的WEB服务器上,例如IIS, Apache, 和Tomcat。然而,HTML是非常灵活的UI标记语言,也就是说任何应用和后端服务都可... 阅读全文
posted @ 2015-05-15 15:53 techfox 阅读(1385) 评论(0) 推荐(0) 编辑
摘要:第一种:注解配置AOPjava中注解配置AOP(使用 AspectJ 类库实现的),大致分为三步:1. 使用注解@Aspect来定义一个切面,在切面中定义切入点(@Pointcut),通知类型(@Before, @AfterReturning,@After,@AfterThrowing,@Aroun... 阅读全文
posted @ 2015-05-15 15:39 techfox 阅读(313) 评论(0) 推荐(0) 编辑
摘要:一个面试题如果让你实现微信的“附近的人”功能,你会怎么做?​初期实现:客户端固定时间发送经纬度(x,y)到服务器s,服务器存储每个登陆的用户的经纬度到表t中,表t按照经纬度分表,将地图分成一个个的小格子。当用户店家“附近的人”时,对用户(x,y)进行计算,最多一次查询其中的4个格子(子表),计算两点... 阅读全文
posted @ 2015-05-15 15:29 techfox 阅读(394) 评论(0) 推荐(0) 编辑
摘要:public class Main {public static class MyCallable implements Callable{public Integer call() throws Exception {return 1;}}public static void main(Strin... 阅读全文
posted @ 2015-05-15 10:00 techfox 阅读(794) 评论(0) 推荐(0) 编辑
摘要:文地址:jenkov作者: Jakob Jenkov译者:长源校对:方腾飞java线程池(Thread Pool)对于限制应用程序中同一时刻运行的线程数很有用。因为每启动一个新线程都会有相应的性能开销,每个线程都需要给栈分配一些内存等等。我们可以把并发执行的任务传递给一个线程池,来替代为每个并发执行... 阅读全文
posted @ 2015-05-14 16:28 techfox 阅读(134) 评论(0) 推荐(0) 编辑
摘要:原文链接作者:Jakob Jenkov译者:刘晓日校对:丁一重入锁死与java中的死锁非常相似。锁和读写锁两篇文章中都有涉及到重入锁死的问题。当一个线程重新获取锁,读写锁或其他不可重入的同步器时,就可能发生重入锁死。可重入的意思是线程可以重复获得它已经持有的锁。Java的synchronized块是... 阅读全文
posted @ 2015-05-14 16:24 techfox 阅读(476) 评论(0) 推荐(0) 编辑
摘要:原文链接作者:Jakob Jenkov译者:微凉校对:丁一相比Java中的锁(Locks in Java)里Lock实现,读写锁更复杂一些。假设你的程序中涉及到对一些共享资源的读和写操作,且写操作没有读操作那么频繁。在没有写操作的时候,两个线程同时读一个资源没有任何问题,所以应该允许多个线程能在同时... 阅读全文
posted @ 2015-05-14 16:18 techfox 阅读(215) 评论(0) 推荐(0) 编辑
摘要:原文链接作者:Jakob Jenkov译者:申章校对:丁一java中的锁像synchronized同步块一样,是一种线程同步机制,但比Java中的synchronized同步块更复杂。因为锁(以及其它更高级的线程同步机制)是由synchronized同步块的方式实现的,所以我们还不能完全摆脱sync... 阅读全文
posted @ 2015-05-14 10:52 techfox 阅读(154) 评论(0) 推荐(0) 编辑
摘要:原文链接 作者:Jakob Jenkov译者:余绍亮 校对:丁一嵌套管程锁死类似于死锁, 下面是一个嵌套管程锁死的场景线程1获得A对象的锁。线程1获得对象B的锁(同时持有对象A的锁)。线程1决定等待另一个线程的信号再继续。线程1调用B.wait(),从而释放了B对象上的锁,但仍然持有对象A的锁。线程... 阅读全文
posted @ 2015-05-14 09:41 techfox 阅读(335) 评论(0) 推荐(0) 编辑
摘要:原文链接 作者:Jakob Jenkov译者:申章 校对:丁一在java中有些情况下死锁是可以避免的。本文将展示三种用于避免死锁的技术:加锁顺序当多个线程需要相同的一些锁,但是按照不同的顺序加锁,死锁就很容易发生。如果能确保所有的线程都是按照相同的顺序获得锁,那么死锁就不会发生。看下面这个例子:T... 阅读全文
posted @ 2015-05-13 18:45 techfox 阅读(311) 评论(0) 推荐(0) 编辑
摘要:原文链接作者:Jakob Jenkov译者:申章校对:丁一java中死锁是两个或更多线程阻塞着等待其它处于死锁状态的线程所持有的锁。死锁通常发生在多个线程同时但以不同的顺序请求同一组锁的时候。例如,如果线程1锁住了A,然后尝试对B进行加锁,同时线程2已经锁住了B,接着尝试对A进行加锁,这时死锁就发生... 阅读全文
posted @ 2015-05-13 17:23 techfox 阅读(184) 评论(0) 推荐(0) 编辑
摘要:原文链接作者:Jakob Jenkov译者:杜建雄校对:方腾飞java中线程通信的目标是使线程间能够互相发送信号。另一方面,线程通信使线程能够等待其他线程的信号。例如,线程B可以等待线程A的一个信号,这个信号会通知线程B数据已经准备好了。1、通过共享对象通信java学习中线程间发送信号的一个简单方式... 阅读全文
posted @ 2015-05-13 13:58 techfox 阅读(188) 评论(0) 推荐(0) 编辑
摘要:原文链接作者:Jakob Jenkov译者:李同杰Java同步块(synchronized block)用来标记方法或者代码块是同步的。Java同步块用来避免竞争。本文介绍以下内容:Java同步关键字(synchronzied)实例方法同步静态方法同步实例方法中同步块静态方法中同步块Java同步示例... 阅读全文
posted @ 2015-05-13 13:54 techfox 阅读(149) 评论(0) 推荐(0) 编辑
摘要:原文链接作者:Jakob Jenkov译者:高嵩校对:丁一在java中当多个线程同时访问同一个资源,并且其中的一个或者多个线程对这个资源进行了写操作,才会产生竞态条件。多个线程同时读同一个资源不会产生竞态条件。我们可以通过创建不可变的共享对象来保证对象在线程间共享时不会被修改,从而实现线程安全。如下... 阅读全文
posted @ 2015-05-13 09:56 techfox 阅读(202) 评论(0) 推荐(0) 编辑