随笔 - 312, 文章 - 14, 评论 - 1393, 引用 - 0
数据加载中……

Java多线程初学者指南(11):使用Synchronized块同步方法

     摘要: synchronized关键字有两种用法。第一种就是在《使用Synchronized关键字同步类方法》一文中所介绍的直接用在方法的定义中。另外一种就是synchronized块。我们不仅可以通过synchronized块来同步一个对象变量。也可以使用synchronized块来同步类中的静态方法和非静态方法。  阅读全文

posted @ 2009-03-22 21:15 银河使者 阅读(11328) | 评论 (1)编辑 收藏

Java多线程初学者指南(10):使用Synchronized关键字同步类方法

     摘要: 要想解决“脏数据”的问题,最简单的方法就是使用synchronized关键字来使run方法同步。虽然可以使用synchronized来定义方法,但synchronized并不属于方法定义的一部分,因此,synchronized关键字不能被继承。如果在父类中的某个方法使用了synchronized关键字,而在子类中覆盖了这个方法,在子类中的这个方法默认情况下并不是同步的,而必须显式地在子类的这个方法中加上synchronized关键字才可以。当然,还可以在子类方法中调用父类中相应的方法,这样虽然子类中的方法不是同步的,但子类调用了父类的同步方法,因此,子类的方法也就相当于同步了。  阅读全文

posted @ 2009-03-20 13:05 银河使者 阅读(9699) | 评论 (4)编辑 收藏

Java多线程初学者指南(9):为什么要进行数据同步

     摘要: Java中的变量分为两类:局部变量和类变量。局部变量是指在方法内定义的变量,如在run方法中定义的变量。对于这些变量来说,并不存在线程之间共享的问题。因此,它们不需要进行数据同步。类变量是在类中定义的变量,作用域是整个类。这类变量可以被多个线程共享。因此,我们需要对这类变量进行数据同步。数据同步就是指在同一时间,只能由一个线程来访问被同步的类变量,当前线程访问完这些变量后,其他线程才能继续访问。这里说的访问是指有写操作的访问,如果所有访问类变量的线程都是读操作,一般是不需要数据同步的。  阅读全文

posted @ 2009-03-19 13:23 银河使者 阅读(4936) | 评论 (1)编辑 收藏

Java多线程初学者指南(8):从线程返回数据的两种方法

     摘要: 从线程中返回数据和向线程传递数据类似。也可以通过类成员以及回调函数来返回数据。但类成员在返回数据和传递数据时有一些区别,下面让我们来看看它们区别在哪。  阅读全文

posted @ 2009-03-19 13:02 银河使者 阅读(6874) | 评论 (0)编辑 收藏

DB2认证考试大纲

     摘要: 包括DB2 Family Fundamentals(700 )、DB2 UDB V8.1 for Linux, UNIX, and Windows Database Administration(701)、DB2 UDB V8.1 Family Application Development(703)、DB2 UDB V8.1 for Linux, UNIX and Windows Advanced Database Administration(704)的考试大纲  阅读全文

posted @ 2009-03-18 14:08 银河使者 阅读(831) | 评论 (0)编辑 收藏

Java多线程初学者指南(7):向线程传递数据的三种方法

     摘要: 在传统的同步开发模式下,当我们调用一个函数时,通过这个函数的参数将数据传入,并通过这个函数的返回值来返回最终的计算结果。但在多线程的异步开发模式下,数据的传递和返回和同步开发模式有很大的区别。由于线程的运行和结束是不可预料的,因此,在传递和返回数据时就无法象函数一样通过函数参数和return语句来返回数据。本文就以上原因介绍了几种用于向线程传递数据的方法,在下一篇文章中将介绍从线程中返回数据的方法。  阅读全文

posted @ 2009-03-16 23:18 银河使者 阅读(15820) | 评论 (2)编辑 收藏

年薪200万数据库牛人牛新庄的成长历程

     摘要: 牛新庄博士,研究方向为数据仓库和数据挖掘。是IBM官方资深培训讲师(培训DB2,AIX,MQ,WebSphere和CICS)。2002年获IBM 杰出软件专家奖,2006年获“首届中国杰出数据库工程师奖”、“2006年IT168技术卓越奖”。是中信银行、山东农信、广东农信等公司资深技术顾问,中国建设银行总行特聘资深技术专家。拥有OCP, AIX,DB2,HP-UX,MQ,CICS和WebSphere等二十多项国际认证。著有《Oracle数据库开发讲座—— Oracle9i Jdeveloper与J2EE实务应用》、《DB2应用开发实战指导》、《循序渐进DB2-系统管理、运行维护与应用案例》、《深入解析DB2-高级管理、内部体系结构与诊断案例》和《DB2性能调整与优化》等书。  阅读全文

posted @ 2009-03-16 08:54 银河使者 阅读(1448) | 评论 (0)编辑 收藏

Java多线程初学者指南(6):慎重使用volatile关键字

     摘要: volatile关键字相信了解Java多线程的读者都很清楚它的作用。volatile关键字用于声明简单类型变量,如int、float、boolean等数据类型。如果这些简单数据类型声明为volatile,对它们的操作就会变成原子级别的。不过在使用volatile关键字时也要慎重,并不是只要简单类型变量使用volatile修饰,对这个变量的所有操作都是原来操作,当变量的值由自身的上一个决定时,如n=n+1、n++等,volatile关键字将失效,只有当变量的值和自身上一个值无关时对该变量的操作才是原子级别的,如n = m + 1,这个就是原级别的。所以在使用volatile关键时一定要谨慎,如果自己没有把握,可以使用synchronized来代替volatile。  阅读全文

posted @ 2009-03-14 16:44 银河使者 阅读(9384) | 评论 (10)编辑 收藏

Java多线程初学者指南(5):join方法的使用

     摘要: 在上面的例子中多次使用到了Thread类的join方法。我想大家可能已经猜出来join方法的功能是什么了。对,join方法的功能就是使异步执行的线程变成同步执行。也就是说,当调用线程实例的start方法后,这个方法会立即返回,如果在调用start方法后后需要使用一个由这个线程计算得到的值,就必须使用join方法。如果不使用join方法,就不能保证当执行到start方法后面的某条语句时,这个线程一定会执行完。而使用join方法后,直到这个线程退出,程序才会往下执行。  阅读全文

posted @ 2009-03-12 09:07 银河使者 阅读(5967) | 评论 (14)编辑 收藏

Java多线程初学者指南(4):线程的生命周期

     摘要: 与人有生老病死一样,线程也同样要经历开始(等待)、运行、挂起和停止四种不同的状态。这四种状态都可以通过Thread类中的方法进行控制。  阅读全文

posted @ 2009-03-11 12:15 银河使者 阅读(8255) | 评论 (3)编辑 收藏

仅列出标题
共31页: First 上一页 14 15 16 17 18 19 20 21 22 下一页 Last