Changeset 50cfa99 for benchmark/mutex


Ignore:
Timestamp:
Jan 9, 2020, 5:06:29 PM (2 years ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
arm-eh, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr
Children:
51493a4, 6b6a3b8
Parents:
c93fd72
Message:

change Go command-line code to behave like C

File:
1 edited

Legend:

Unmodified
Added
Removed
  • benchmark/mutex/goroutine.go

    rc93fd72 r50cfa99  
    22
    33import (
    4     "fmt"
    5     "time"
    6     "flag"
    7     "sync"
     4        "fmt"
     5        "time"
     6        "os"
     7        "strconv"
     8        "sync"
    89)
    910
     
    1112
    1213func call() {
    13     mutex.Lock();
    14     mutex.Unlock();
     14        mutex.Lock();
     15        mutex.Unlock();
    1516}
    1617func main() {
    17         times := flag.Int( "times", 10000000, "loop iterations" )
    18         flag.Parse()
     18        var times int = 10000000
     19        if len( os.Args ) > 2 { os.Exit( 1 ) }
     20        if len( os.Args ) == 2 { times, _ = strconv.Atoi(os.Args[1]) }
     21
    1922        start := time.Now()
    20         for i := 1; i <= *times; i += 1 {
     23        for i := 1; i <= times; i += 1 {
    2124                call();
    2225        }
    2326        end := time.Now()
    24         fmt.Printf( "%d\n", end.Sub(start) / time.Duration(*times) )
     27        fmt.Printf( "%d\n", end.Sub(start) / time.Duration(times) )
    2528}
    2629
Note: See TracChangeset for help on using the changeset viewer.