摘要: -------android培训、java培训、期待与您交流! ----------5.多线程的安全问题:多线程同步 当使用多个线程同时访问一个数据时,经常会出现线程安全问题。如下面程序: 1 package Thread; 2 3 /* 4 * 多个线程同时访问一个数据时,出现的安全问题。 5 * 模拟一个卖火车票系统:一共有100张票,多个窗口同时卖票 6 */ 7 class Ticks implements Runnable 8 { 9 private int ticks = 100 ; 10 public void run()11 {12 ... 阅读全文
posted @ 2013-04-21 18:13 江南香 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 单线程的程序只有一个顺序流;而多线程的程序则可以包括多个顺序执行流,并且多个顺序流之间互不干扰。就像单线程程序如同只雇佣了一个服务员的餐厅,他只有做完一件事情后才可以做下面一件事情;而多线程程序则是雇佣了多名服务员的餐厅,他们可以同时进行着多件事情。 JAVA多线程编程的相关知识:创建、启动线程、控制线程、以及多线程的同步操作。1.概述: 进程是指正在运行中的程序。每一个进程执行都有一个执行顺序,该顺序是一个执行路径,或叫一个执行单元。 线程是指进程中能够独立执行的控制单元。线程控制着进程的执行。一个进程可以同时运行多个不同的线程。 两者的区别: 一个程序运行后至少有一个进程,一个进程里... 阅读全文
posted @ 2013-04-21 18:11 江南香 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 刚刚看到了一关于多线程的面试题目,就试着写了一下。 题目: 模拟妈妈做饭,做饭时发现没有盐了,让儿子去买盐。只有盐买回来之后,妈妈才能继续做饭的过程。 问题分析:既然是面向对象编程,拿到问题是首先就要分析涉及到哪些对象。显然,该问题涉及的对象有:妈妈、儿子和盐。其中妈妈和儿子都是线程类,共享资源就是盐,所以盐Salt类的方法都要设置为同步方法。具体代码如下: 1 package com.sync; 2 /** 3 * 题目: 模拟妈妈做饭,做饭时发现没有盐了,让儿子去买盐 4 * 只有盐买回来之后,妈妈才能继续做饭的过程。 5 * @author Administra... 阅读全文
posted @ 2013-04-21 18:09 江南香 阅读(107) 评论(0) 推荐(0) 编辑