第一章:简介 程序清单1-1非线程安全的数值序列生成器 import net.jcip.annotations.NotThreadSafe; @NotThreadSafe public class UnsafeSequence { private int value; /*返回一个唯一的数值*/ public int getValue() { return value++; //三个操作:读取,加一,赋值. 多线程并发操作value可能导致步骤被打乱 } } 程序清单1-2 线程安全的数值序列生…
▶ 书中第一章部分程序,加上自己补充的代码,包括若干种二分搜索,寻找图上连通分量数的两种算法 ● 代码,二分搜索 package package01; import java.util.Arrays; import edu.princeton.cs.algs4.StdRandom; public class class01 { public int binarySearch(int [] a, int target) // 非递归实现 { int lp = 0, rp = a.length -…
第一章-对程序错误的处理 在开始介绍Microsoft Windows 的特性之前,必须首先了解 Wi n d o w s的各个函数是如何进行错误处理的. 当调用一个Wi n d o w s函数时,它首先要检验传递给它的的各个参数的有效性,然后再设法执行任务.如果传递了一个无效参数,或者由于某种原因无法执行这项操作,那么操作系统就会返回一个值,指明该函数在某种程度上运行失败了.表 1 - 1列出了大多数Wi n d o w s函数使用的返回值的数据类型. 一个Wi n d o w s函数返回的错…