Skip to content

習題 4 -- multi-thread 使用 mutex 前後  #5

Description

@ccckmit

以下題目 2 選 1 (第一題較簡單,也較容易產生 race condition,推薦做第一題)

  1. 寫一個 multi-thread 的提款與存款程式,分成兩個版本 (較簡單,推薦)
    • 沒有用 mutex,用很多密集的提款與存款造成 race condition
    • 有用 mutex,用很多密集的提款與存款也不會造成 race condition
  2. 寫一個 multi-thread 的爬蟲程式,分成兩個版本 (較困難,挑戰題)
    • 沒有用 mutex,用很多密集的爬網頁會造成 race condition
    • 有用 mutex,用很多密集的爬網頁也不會造成 race condition

提醒:最後要寫一個 README.md 文件,記錄執行結果並說明這些結果的意義。

問題 1 詳細描述

a. 使用者應紀錄自己原本帳戶有多少錢,每次存提多少錢,還剩下多少錢
b. 每次存提款請求給銀行之後,銀行應傳回還剩下多少錢。
c. 使用者應檢核『存款+-存提款數量=剩下金額』是否正確,如果有錯立刻報錯。

參考

  1. race.c
  2. norace.c

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions