[tf.data] Change the code to solve the bug that ParallelMap records more buffered elements enqueue than dequeue.
PiperOrigin-RevId: 335742261 Change-Id: I5f43c880f19022b59addc02dd9a93da74ad96a74
This commit is contained in:
parent
27134a78b3
commit
bde6a9cfee
@ -405,7 +405,6 @@ class ParallelMapDatasetOp::Dataset : public DatasetBase {
|
||||
TF_LOCKS_EXCLUDED(*mu_) {
|
||||
mutex_lock l(*mu_);
|
||||
num_calls_--;
|
||||
RecordBufferEnqueue(ctx.get(), result->return_values);
|
||||
result->notification.Notify();
|
||||
cond_var_->notify_all();
|
||||
}
|
||||
@ -428,6 +427,7 @@ class ParallelMapDatasetOp::Dataset : public DatasetBase {
|
||||
|
||||
auto done = [this, ctx, result](Status status) {
|
||||
result->status.Update(status);
|
||||
RecordBufferEnqueue(ctx.get(), result->return_values);
|
||||
CallCompleted(ctx, result);
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user