upgraded to run in parallel

This commit is contained in:
Peli de Halleux
2018-01-23 14:52:41 -08:00
parent 18480080e7
commit 387effbdd0
9 changed files with 14 additions and 14 deletions

View File

@ -134,7 +134,7 @@
"control.panic": "Display an error code and stop the program.",
"control.panic|param|code": "an error number to display. eg: 5",
"control.reset": "Reset the device.",
"control.runInBackground": "Run other code in the background.",
"control.runInParallel": "Run other code in the parallel.",
"control.waitForEvent": "Blocks the calling thread until the specified event is raised.",
"control.waitMicros": "Block the current fiber for the given microseconds",
"control.waitMicros|param|micros": "number of micro-seconds to wait. eg: 4",

View File

@ -25,7 +25,7 @@
"control.onEvent|block": "on event|from %src|with value %value",
"control.panic|block": "panic %code",
"control.reset|block": "reset",
"control.runInBackground|block": "run in background",
"control.runInParallel|block": "run in parallel",
"control.waitForEvent|block": "wait for event|from %src|with value %value",
"control.waitMicros|block": "wait (µs)%micros",
"control|block": "control",

View File

@ -118,11 +118,11 @@ declare namespace control {
function waitMicros(micros: int32): void;
/**
* Run other code in the background.
* Run other code in the parallel.
*/
//% help=control/run-in-background blockAllowMultiple=1 afterOnStart=true
//% blockId="control_run_in_background" block="run in background" blockGap=8 shim=control::runInBackground
function runInBackground(a: () => void): void;
//% help=control/run-in-parallel handlerStatement=1
//% blockId="control_run_in_parallel" block="run in parallel" blockGap=8 shim=control::runInParallel
function runInParallel(a: () => void): void;
/**
* Blocks the calling thread until the specified event is raised.

View File

@ -11,7 +11,7 @@ namespace sensors.internal {
// This is implementation for the simulator.
control.runInBackground(() => {
control.runInParallel(() => {
let prev = query()
changeHandler(prev, prev)
while (true) {

View File

@ -271,7 +271,7 @@ void setupThread(Action a, TValue arg = 0, void (*runner)(Thread *) = NULL, TVal
}
}
void runInBackground(Action a) {
void runInParallel(Action a) {
setupThread(a);
}

View File

@ -291,7 +291,7 @@ namespace music {
export function playSoundEffect(sound: Sound) {
if (!sound || numSoundsPlaying >= soundsLimit) return;
numSoundsPlaying++;
control.runInBackground(() => {
control.runInParallel(() => {
sound.play();
numSoundsPlaying--;
});