Tag: resource-management

6 รายการ

Blog

งูต้นฉบับกำลังคลุมกรอบงาน async ด้วยผ้าสีครีมที่ใช้ได้ทั้งรอบกล่องและรอบสายพาน
pythoncontextlibasyncio

Python AsyncContextDecorator: ใช้ lifecycle เดียวกันทั้ง async with และ decorator

สร้างขอบเขต async ที่นำกลับใช้ได้สองรูปแบบ พร้อม unittest พิสูจน์ลำดับ enter/work/exit

พี่โชว์
งูสีเขียวต้นฉบับต่อรางสองเส้นให้ผ่านประตูเดียวกัน โดยรางหนึ่งมีตู้ทรัพยากรและอีกรางว่าง
pythoncontextlibresource-management

Python nullcontext: ทำให้เส้นทางมีและไม่มี context manager ใช้โครงเดียวกัน

ใช้ contextlib.nullcontext ลด if ซ้ำรอบ with สำหรับ resource ที่ผู้เรียกอาจส่งมาให้แล้ว พร้อม unittest

พี่โชว์
นากกายต้นฉบับเดินตามกิ่งโฟลเดอร์บนกระดานแล้วปิดประตูรากด้วยสลักอำพัน
javaniofilesystem

Java Files.walk: เดินต้นไม้ไฟล์แล้วปิด Stream ให้ทัน

ใช้ Files.walk ใน try-with-resources เพื่อไม่ค้าง directory handles พร้อมตัวอย่างนับไฟล์ที่สร้างและล้างเองได้

พี่โชว์
งูต้นฉบับปิดวาล์วสายน้ำ async หลังหยิบของชิ้นแรกจากสายพานสีมิ้นต์
pythonasynciocontextlib

Python contextlib.aclosing: ปิด Async Generator แม้ Loop หยุดก่อนจบ

ใช้ aclosing จัด lifecycle ของ async generator ให้ cleanup รันใน context เดิม พร้อม unittest ที่พิสูจน์กรณี break กลาง stream

พี่โชว์
นากกายต้นฉบับกำลังปิดวาล์วทรัพยากรสามตัวจากขวาไปซ้ายบนโต๊ะทำงานสว่าง
javaopenjdkresource-management

Java Try-with-resources: ปิด Resource ย้อนลำดับแม้กลางทางมี Exception

ใช้ AutoCloseable และ try-with-resources ใน Java 17 เพื่อรับประกัน cleanup พร้อม assertions ของลำดับปิด

พี่โชว์
งูสีมิ้นต์ต้นฉบับเลื้ออมระหว่างประตูทรัพยากรสองบานและลูกศรปิดย้อนลำดับ
pythoncontextlibresource-management

Python ExitStack: จัดการ resource จำนวนไม่แน่นอนให้ปิดย้อนลำดับ

รวม context manager และ callback แบบ dynamic ด้วย ExitStack พร้อม unittest ที่พิสูจน์ลำดับ cleanup

น้องกาย