Skip to content

Chocobo1/concurrent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Concurrent TravisCI_status AppVeyor_status

A naive tool that take cmd line commands (from text file or pipe) and execute concurrently:

screencast.gif

It will automatically distribute the commands to CPU cores, the logical ones as much as you have except one (which is reserved for OS).

If you seek a more powerful tool: GNU Parallel.

Usage

  • Issue commands via stdin (pipe) input:

someCmdGenerator | concurrent -


* Issue commands via file:
```shell
concurrent <path_to_file>

Special directives

  • Fence: Will wait for all executing commands (i.e. all commands before this directive) to finish and then continue on.

Fence

or

rem Fence rem


* Change the number of commands executing in parallel:

Threads: <# of jobs>

or

rem Threads: <# of jobs> rem


* Comment keyword: {`#`, `rem`}, the same as shell script & batch comment keyword.

Lines starting with these keywords will be ignored.


## Compile

Get yourself a [C++11 compiler](http://en.cppreference.com/w/cpp/compiler_support) and run:
```shell
cd src
make -j2

To run tests:

git submodule update --init --remote --depth 1  # init git submodule
cd src
make -j2 test

Downloads

Download win32 executables here

Third-party code