对 makefile 中 .NOTPARALLE 的学习体会
2012-09-25 14:22
225 查看
上例子
事先准备好三个脚本:
a01.sh b01.sh c01.sh:
脚本内容如下, 即每睡眠一秒钟后再输出内容:
a01.sh
b01.sh
c01.sh
makefile 的内容如下:
如果仅仅运行 make , 则 a01.sh b01.sh c01.sh 几个脚本还是串行执行的。
但是如果执行 make --jobs=3,得到的结果是:
a01...1
b01...1
c01...1
a01....2
b01....2
c01....2
...
成为并行执行。
但是如果在此makefile 加入 .NOTPARALLEL,则:
则 即使 make --jobs=3 执行,a01.sh b01.sh c01.sh 几个脚本仍然是串行执行的。
结束
结束
事先准备好三个脚本:
a01.sh b01.sh c01.sh:
脚本内容如下, 即每睡眠一秒钟后再输出内容:
a01.sh
for ((i=0;i<10;i++)); do @echo "a01..." $i; sleep 1; done;
b01.sh
for ((i=0;i<10;i++)); do @echo "b01..." $i; sleep 1; done;
c01.sh
for ((i=0;i<10;i++)); do @echo "c01..." $i; sleep 1; done;
makefile 的内容如下:
.PHONY:all all: a b c a: ./a01.sh b: ./b01.sh c: ./c01.sh
如果仅仅运行 make , 则 a01.sh b01.sh c01.sh 几个脚本还是串行执行的。
但是如果执行 make --jobs=3,得到的结果是:
a01...1
b01...1
c01...1
a01....2
b01....2
c01....2
...
成为并行执行。
但是如果在此makefile 加入 .NOTPARALLEL,则:
.NOTPARALLEL
.PHONY:all all: a b c a: ./a01.sh b: ./b01.sh c: ./c01.sh
则 即使 make --jobs=3 执行,a01.sh b01.sh c01.sh 几个脚本仍然是串行执行的。
结束
结束
相关文章推荐
- 对 makefile 中 .IGNORE的学习体会
- 对 makefile 中 .EXPORT_ALL_VARIABLES 的学习体会
- 对 makefile 中 .SUFFIXES 的学习体会
- 对 makefile 中 override 优先级的学习体会
- 对 makefile 中 $(MAKE) 的学习体会
- 对 makefile 中 .SECONDARY 的学习体会
- 对 makefile 中 .DELETE_ON_ERRORS 的学习体会
- 对 makefile 中 eval 函数的学习体会
- 对 makefile 中 .ONESHELL的学习体会
- 对 makefile 中 flavor 函数的学习体会
- 解放思想学习心得体会 17
- 华罗庚谈学习和研究数学的一些体会(转载)
- Linux makefile 教程,简单粗暴,2小时学习makefile
- 关于embedded linux的使用、开发、学习的一点自已的体会
- 黑马程序员—13—java基础:有关集合类的学习笔记和心得体会
- 【嵌入式系统学习记录】基于简易通讯录对指针、结构体、函数的使用体会
- QTP 操作参数输出学习体会
- 学习简单编写Makefile 模板
- 关于OR-Mapping的学习心得体会
- C语言的大BOSS:结构体+单链表的学习体会