diff options
Diffstat (limited to 'v_windows/v/examples/concurrency/concurrency_http.v')
-rw-r--r-- | v_windows/v/examples/concurrency/concurrency_http.v | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/v_windows/v/examples/concurrency/concurrency_http.v b/v_windows/v/examples/concurrency/concurrency_http.v new file mode 100644 index 0000000..b5b0b58 --- /dev/null +++ b/v_windows/v/examples/concurrency/concurrency_http.v @@ -0,0 +1,32 @@ +import net.http +import sync +import time + +fn vlang_time(mut wg sync.WaitGroup) ?string { + start := time.ticks() + data := http.get('https://vlang.io/utc_now') ? + finish := time.ticks() + println('Finish getting time ${finish - start} ms') + println(data.text) + wg.done() + return data.text +} + +fn remote_ip(mut wg sync.WaitGroup) ?string { + start := time.ticks() + data := http.get('https://api.ipify.org') ? + finish := time.ticks() + println('Finish getting ip ${finish - start} ms') + println(data.text) + wg.done() + return data.text +} + +fn main() { + mut wg := sync.new_waitgroup() + wg.add(2) + // Run tasks async + go vlang_time(mut wg) + go remote_ip(mut wg) + wg.wait() +} |