threads: fix for multiple threads with the same wakeup time
This commit is contained in:
parent
6b09e4f4dd
commit
266c5eeb9b
|
@ -53,6 +53,7 @@
|
||||||
;; ----------------------------------------
|
;; ----------------------------------------
|
||||||
|
|
||||||
;; insert : tree X Y (X X -> bool) -> tree
|
;; insert : tree X Y (X X -> bool) -> tree
|
||||||
|
;; Updates existing value ifthe key is already in the tree.
|
||||||
(define (insert t key val <?)
|
(define (insert t key val <?)
|
||||||
(cond
|
(cond
|
||||||
[(not t) (combine key val #f #f)]
|
[(not t) (combine key val #f #f)]
|
||||||
|
@ -66,7 +67,7 @@
|
||||||
node-right
|
node-right
|
||||||
node-left
|
node-left
|
||||||
reverse-combine)]
|
reverse-combine)]
|
||||||
[else t]))
|
[else (struct-copy node t [val val])]))
|
||||||
|
|
||||||
;; insert-to : tree X Y (X X -> bool)
|
;; insert-to : tree X Y (X X -> bool)
|
||||||
;; (tree-of-X -> tree-of-X)
|
;; (tree-of-X -> tree-of-X)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user