Daha iyi performans için optimize edilmesi gereken bir Clojure kodu parçam var. Benim düşüncem onu java kullanarak yeniden yazmak. Yeniden yazmam gereken kodda kilitleme makrosu kullandım tek bir nesne var ve bu nesne aynı zamanda nerede Clojure kodunda yazılmışsa kilitlenebilir.Java'da kilitleme makrosu ya da monitör giriş ve çıkış-çıkışını kullanın Clojure
Bu uygulama bellek duyarlı olduğundan yeni ReentrantLock nesnesini tanımlamak istemiyorum.
Soruma, java'nın kilitleme makrosuna veya monitor-enter
ve monitor-exit
Clojure kapağının altına eşit olduğu sorusu nedir? locking
bir makro çeviri olduğunu
(def someObject ...)
(locking someObject
;; critical section)
: Aşağıdaki Clojure kodu için