Skip to content

Commit 086b578

Browse files
committed
Simplify the code for trySend() with a timeout a little bit.
1 parent 6313ddd commit 086b578

File tree

1 file changed

+2
-4
lines changed

1 file changed

+2
-4
lines changed

src/main/scala/com/github/yruslan/channel/AsyncChannel.scala

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -94,21 +94,19 @@ class AsyncChannel[T](maxCapacity: Int) extends Channel[T] {
9494
lock.lock()
9595
try {
9696
writers += 1
97-
9897
var isTimeoutExpired = false
9998
while (!closed && !hasCapacity && !isTimeoutExpired) {
10099
isTimeoutExpired = !awaitWriters(awaiter)
101100
}
101+
writers -= 1
102102

103-
val isSucceeded = if (!closed && hasCapacity) {
103+
if (!closed && hasCapacity) {
104104
q.enqueue(value)
105105
notifyReaders()
106106
true
107107
} else {
108108
false
109109
}
110-
writers -= 1
111-
isSucceeded
112110
} finally {
113111
lock.unlock()
114112
}

0 commit comments

Comments
 (0)