Просмотр исходного кода

Merge pull request #245 from nuskey8/fix/auto-flush-buffer

fix: auto flush on closing BufferdOutputStream
Akito Inoue 2 недель назад
Родитель
Сommit
14d33e7be6
1 измененных файлов с 12 добавлено и 0 удалено
  1. 12 0
      src/Lua/IO/BufferedOutputStream.cs

+ 12 - 0
src/Lua/IO/BufferedOutputStream.cs

@@ -35,4 +35,16 @@ public class BufferedOutputStream(Action<ReadOnlyMemory<char>> onFlush) : ILuaSt
 
         return default;
     }
+
+    public ValueTask CloseAsync(CancellationToken cancellationToken = default)
+    {
+        if (buffer.Length > 0)
+        {
+            onFlush(buffer.AsArray().AsMemory(0, buffer.Length));
+            buffer.Clear();
+        }
+
+        IsOpen = false;
+        return default;
+    }
 }