今天坐车回来突然有个想法,我把它记录下来。
在广州上下班时间主要交通路线一定会塞车,而且通常是没有交通意外,红绿灯没坏,交警们还在的情况下发生。部分原因是因为广州的主要商业区比较集中,市民的居住地也集中在几个方向,这样一来就会出现上下班时间集中在某个方向的车道塞车,而相反方向的车道却被闲置着。
但是如果把道路的设施稍微改动一下。比如现在道路之间是用花圃、栏杆或者双黄线隔开的。这有可能会美化道路,但是却不能给市民带来方便。如果我们把花圃、栏杆拆掉,把黄线给抹掉,用埋在道路表面的灯来代替。
如上图 1,2,3 分别代表埋在路表面的黄灯 平时默认2亮,在出现塞车时可以灵活的调整1,3灯是否为亮。通过调整塞车车道的宽度来缓解广州的路况。我觉得是可行的办法。
1.从分利用了道路资源,不会出现一边道路紧张一边却被闲置。
2.在路表铺上路灯的成本比每天塞车的成本低(我没调查过)
但是还是会面临各种问题
1.没有相关法规规定,路表的指示灯可以作为指挥交通。
2.即使有相关法规出台。广州的司机大老会买单吗?谁来监管。
3.即使可以通过电子眼来监管司机。指示灯谁来控制?如何控制灯亮灯灭。会出现车开到一半车道变窄的情况,车却开到了相反方向。
4.其实控制灯亮灯灭技术上计算机是可以实现的。
完
posted @
2006-01-17 21:39 nake 阅读(1089) |
评论 (10) |
编辑 收藏
今天运气不错,一到车站就能上车,有位置坐,开了几个站都没有老太太上车。今天司机开车想疯了一样把车开得很快。也许现在很晚了吧。工作到了收尾阶段,不是很忙了,我还是晚回。也许我是习惯了吧。我习惯下班后修改一些bug或者优化程序,这样我能够静下心来。我该改改我的习惯了。
今天看了一篇文章,让我想起了老子说的信言不美,美言不信。善者不辩,辩者不善。知者不博,博者不知。意思是说,自己可以相信的、对自己真正有益的话不会好听,但阿谀奉承的好听话千万不可以相信......
posted @
2006-01-10 22:54 nake 阅读(352) |
评论 (2) |
编辑 收藏
线程池的体验,这里是简单的例子,不解释了,只能意会不能言传。
//第一个类
package thread;
import java.util.LinkedList;
public class ThreadPool {
private LinkedList tasks = new LinkedList();
public ThreadPool(int size) {
for (int i = 0; i < size; i++) {
System.out.println("new");
Thread thread = new ThreadTask(this);
thread.start();
}
}
public void run(Runnable task) {
System.out.println("run0");
synchronized (tasks) {
tasks.addLast(task);
tasks.notify();
}
}
public Runnable getNext() {
Runnable returnVal = null;
synchronized (tasks) {
while (tasks.isEmpty()) {
try {
System.out.println("waiting");
Thread.sleep(1000);
tasks.wait();
System.out.println("waited");
} catch (InterruptedException ex) {
System.err.println("Interrupted");
}
}
returnVal = (Runnable) tasks.removeFirst();
}
return returnVal;
}
public static void main(String args[]) {
final String message[] = { "zgw", "nake", "sunny", "piao" };
ThreadPool pool = new ThreadPool(message.length / 1);
for (int i = 0, n = message.length; i < n; i++) {
final int innerI = i;
Runnable runner = new Runnable() {
public void run() {
for (int j = 0; j < 25; j++) {
System.out.println("j: " + j + ": " + message[innerI]+" "+innerI);
}
}
};
pool.run(runner);
}
}
}
//---------------------
第二个类
package thread;
import java.util.LinkedList;
class ThreadTask extends Thread {
private ThreadPool pool;
public ThreadTask(ThreadPool thePool) {
pool = thePool;
}
public void run() {
while (true) {
System.out.println("gogogo");
// blocks until job
Runnable job = pool.getNext();
try {
job.run();
} catch (Exception e) {
System.err.println("Job exception: " + e);
}
}
}
}
posted @
2006-01-08 22:58 nake 阅读(284) |
评论 (0) |
编辑 收藏
在过去的二十年里,新的软件开发方法和技术的使用并未使软件生产率和生产质量得到有效的提高。软件生产商开始意识到他们的基本问题在于对软件的生产过程管理不力,主要体现在:软件产品不能按时完成、超出预算的成本、以及采用新的技术和工具后其好处难以体现。
企业要通过选择最关键的目标来进行过程改进,应该搞清成熟的软件过程和不成熟的过程之间的差异。
不成熟的企业有如下标志:
- 缺乏确定的软件过程和相应的管理和控制;
- 即使给出了软件过程,也不严格的遵循和强制执行;
- 管理是完全被动的,管理者采用的策略是救火式的,即出了事才去解决,解决的时候也难以纵观全局,往往只顾眼前;
- 由于缺乏有依据的估算,制订软件预算和生产计划时往往跟着感觉走,实际生产时则常常超标;
- 如果强制在预定期限内完成,那么软件的功能和质量肯定是得不到保证;
- 缺乏评价软件产品质量和解决产品缺陷和过程问题的客观基础。
成熟的企业则有如下标志:
- 具有在企业范围内管理、控制软件开发和维护过程的能力;
- 现有人员和新进人员均了解所遵循的软件过程,且工作活动均按照事先的计划完成;
- 在定义好的软件过程中,所有项目和机构中的角色和责任分明;
- 制定的计划是有效的且与实际的工作进展一致;
- 软件过程在必要时可按照一定规则和程序加以修改;
- 软件产品和过程的具有一定的可控性。这主要体现在:
- 管理者能够监督软件产品的质量和生产过程;
- 具有客观的和定量化的措施来判断产品质量并分析产品与生产过程中的问题;
- 计划和预算有章可循,它是基于历史数据的,从而是实际可行的;
- 预算的结果,包括成本、时间表、产品功能和质量等,通常能够达到;
- 有关的参与者完全理解遵循软件过程的价值并认真地遵循之;
- 具有支撑软件过程的基础设施,如标准过程库、历史数据库等。
如果公司要通过CMM2,那么公司的管理成本又有多大?公司其它管理层是否意识到制定标准的好处?新事物会带来多少人的抵制?
posted @
2006-01-02 10:12 nake 阅读(427) |
评论 (0) |
编辑 收藏