diff --git a/datastore/sharedds.nim b/datastore/sharedds.nim index 2ab30ff..9820deb 100644 --- a/datastore/sharedds.nim +++ b/datastore/sharedds.nim @@ -104,8 +104,6 @@ proc newSharedDataStore*( return failure(err) res[].value = newSharedPtr(ThreadDatastore) - res[].signal = ThreadSignalPtr.new().valueOr: - return failure newException(DatastoreError, "error creating signal") echo "\nnewDataStore: threadId:", getThreadId() res.createThreadDatastore(backend) diff --git a/datastore/threadbackend.nim b/datastore/threadbackend.nim index e3ef064..9bde2b7 100644 --- a/datastore/threadbackend.nim +++ b/datastore/threadbackend.nim @@ -68,9 +68,9 @@ var fsDatastore {.threadvar.}: FSDatastore ##\ ## TODO: figure out a better way to capture this? -# proc `=destroy`*[T](x: var ThreadResult[T]) = -# when T isnot void: -# x.value.`=destroy` +proc `=destroy`*[T](x: var ThreadResult[T]) = + when T isnot void: + x.value.`=destroy` proc newThreadResult*[T](tp: typedesc[T]): Result[TResult[T], ref CatchableError] = let res = newSharedPtr(ThreadResult[T])