Erlo

Java 线 程 的 讨 论 与 应 用 (转)

时间:2019-02-27 00:00   阅读:30次   来源:jQuery中文网
页面报错
点赞

<script>ec(2);</script>

Java 线 程 的 讨 论 与 应 用
龙 士 工
一、 为 什 么 要 研 究 和 使 用 线 程
一 般 来 说, 计 算 机 正 在 执 行 的 程 序 称 作 进 程(process), 进 程 有 不 同 的 地 址 空 间 并 且 是 在 同 一 系 统 上 运 行 的 不 同 程 序, 如 W O R D 和Excel, 进 程 间 的 通 讯 是 很 费 时 而 且 有 限 的。
 上 下 文 切 换、 改 变 运 行 的 进 程 也 是 非 常 复 杂 的。
 进 程 间 通 讯 复 杂, 可 能 需 要 管 道、 消 息 队 列、 共 享 内 存(sharedmemory) 或 信 号 处 理 来 保 证 进 程 间 的 通 讯。
 尽 管 许 多 程 序 都 在 运 行, 但 一 次 只 能 与 一 个 程 序 打 交 道。

线 程(thread) 是 指 进 程 中 单 一 顺 序 的 控 制 流。
 又 称 为 轻 量 级 进 程。
 线 程 则 共 享 相 同 的 地 址 空 间 并 共 同 构 成 一 个 大 的 进 程。
 线 程 间 的 通 讯 是 非 常 简 单 而 有 效 的, 上 下 文 切 换 非 常 快 并 且 是 整 个 大 程 序 的 一 部 分 切 换。
 线 程 仅 是 过 程 调 用, 它 们 彼 此 独 立 执 行, 线 程 使 得 在 一 个 应 用 程 序 中, 程 序 的 编 写 更 加 自 由 和 丰 富。
 线 程 的 兴 趣 在 于, 一 个 程 序 中 同 时 使 用 多 个 线 程 来 完 成 不 同 的 任 务。
 因 此 如 果 很 好 地 利 用 线 程, 可 以 大 大 简 化 应 用 程 序 设 计。
 多 线 程 可 以 增 进 程 序 的 交 互 性, 提 供 更 好 的 能 力 和 功 能、 更 好 的GUI 和 更 好 的 服 务 器 功 能。
 给 二 个 例 子 说 明 如 下:
例 一: 利 用 多 线 程 并 行 机 制 可 以 很 好 地 解 决 交 互 式 网 络 程 序 中 的 许 多 问 题, 如: 大 量 的 网 络 文 件 资 源 的 读 写、 用 户 输 入 响 应、 动 画 显 示 等 问 题 不 需 要 C P U 的 多 少 时 间; 而 耗 时 的 复 杂 计 算 通 常 并 不 需 要 立 即 响 应, 所 以 无 需 将 C P U 全 给 它。
 例 如, 从 一 个 慢 速 的 网 络 上 读 取 一 数 据 流 也 许 要 1 分 钟 时 间, 但 需 要 C P U 参 与 传 输 数 据 的 时 间 则 非 常 短; 响 应 用 户 的 输 入 如 击 键, 就 算 最 快 的 输 入 员, 1 秒 钟 击 键 1 0 次, 也 不 需 要 C P U 的 多 少 时 间。
 动 画 程 序 比 较 耗 时, 一 幅 画 在 1 秒 内 要 重 绘 5 - 1 0 次, 但 C P U 在 大 部 分 时 间 仍 处 于 空 闲 状 态。

您可能感兴趣的文章:

评论留言

还没有评论留言,赶紧来抢楼吧~~

Erlo大厅()

* 这里是“吐槽厅”,所有人可看,只保留当天信息。

  • Erlo.vip2019-10-24 03:21:55Hello、欢迎使用吐槽厅,这里是个吐槽的地方。
  • 返回顶部