敏捷軟件開發之Command模式

Command模式是設計模式中最簡單的模式,該接口標準實現只有一個方法。該模式常見用法是創建和執行事務。

Active Object模式是使用Command模式的地方之一。該模式是實現多線程控制的一項最古老的技術。
如下:
ActiveObjectEngine對象維護了一個Command對象的鏈表。用戶可以向該引擎增加新的命令,或者調用run()。run()函數只是遍歷鏈表,執行并去除每個命令。

public interface Command {
    void execute();
}

public class ActiveObjectEngine {
    ArrayList<Command> itsCommands = new ArrayList<>();

    public void addCommand(Command cmd) {
        this.itsCommands.add(cmd);
    }

    public void run() {
        while (this.itsCommands.size() > 0) {
            Command cmd = this.itsCommands.get(0);
            itsCommands.remove(0);
            cmd.execute();
        }
    }
}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容