s/benchmarks/micro/BenchmarkRecursionLock.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 28 Aug 2017 21:41:34 +0100
changeset 316 44346cc94ec4
permissions -rw-r--r--
Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
316
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'jv:calipel/s/benchmarks/micro' }"
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
"{ NameSpace: Smalltalk }"
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
BenchmarkLocking subclass:#BenchmarkRecursionLock
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	instanceVariableNames:''
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	classVariableNames:''
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
	poolDictionaries:''
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
	category:'CalipeL-S-Benchmarks-Micro'
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
!BenchmarkRecursionLock methodsFor:'parameters'!
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
nesting: anInteger
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
    <parameter: #nesting type: #Integer values: #(1 2 5 10)>
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
    nesting := anInteger.
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
    "Modified (format): / 28-08-2017 / 21:11:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
! !
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
!BenchmarkRecursionLock methodsFor:'running'!
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
setUp
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
    <setup>
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
    (Smalltalk includesKey: #RecursionLock) ifTrue:[
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
        lock := RecursionLock new.
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
    ] ifFalse:[
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
        lock := Monitor new
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
    ].
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
    "Created: / 25-08-2017 / 08:54:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
    "Modified: / 28-08-2017 / 21:24:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
! !
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
!BenchmarkRecursionLock class methodsFor:'documentation'!
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
version_HG
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
    ^ '$Changeset: <not expanded> $'
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
! !
44346cc94ec4 Added benchmarks for `Semaphore >> #critical:` and `RecursionLock >> #critical:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42