Какова основная цель setTag () getTag () методов View?

Это мое грубое решение:

function run_task {
        cmd=$1
        output=$2
        concurency=$3
        if [ -f ${output}.done ]; then
                # experiment already run
                echo "Command already run: $cmd. Found output $output"
                return
        fi
        count=`jobs -p | wc -l`
        echo "New active task #$count:  $cmd > $output"
        $cmd > $output && touch $output.done &
        stop=$(($count >= $concurency))
        while [ $stop -eq 1 ]; do
                echo "Waiting for $count worker threads..."
                sleep 1
                count=`jobs -p | wc -l`
                stop=$(($count > $concurency))
        done
}

Идея состоит в том, чтобы использовать «задания», чтобы узнать, сколько детей активно в фоновом режиме и ждать, пока это число не упадет (ребенок выйдет). После того, как ребенок существует, можно запустить следующую задачу.

Как вы можете видеть, существует также немного дополнительной логики, чтобы избежать одновременного запуска одних и тех же экспериментов / команд. Он выполняет эту работу для меня. Однако эта логика может быть либо пропущена, либо улучшена (например, отметьте отметки времени создания файла, параметры ввода и т. Д.).

401
задан Swati Garg 14 October 2018 в 17:30
поделиться