🧑💻 C/C++
Lập trình C/C++
Predefined macros trong C++
Compiler cung cấp một số macros được định nghĩa sẵn để hỗ trợ log, trace Chúng ta có thể tự tạo logging macro bao gồm các marcos có sẵn
Thread, mutex trong C++
Thread là một luồng thực thi (execution flow) độc lập bên trong cùng một tiến trình (process). Một chương trình có thể có nhiều thread chạy song song hoặc gần như song song trên nhiều CPU core. Thread giúp chương trình nhanh hơn khi các công việc độc lập; nhưng càng nhiều thread thì việc … Read more
Process, fork trong C++, zomebi, wait, ps command, pstree
fork() tạo ra một bản sao của process hiện tại. Process con có không gian địa chỉ riêng biệt, tách biệt hoàn toàn với process cha. Sau khi gọi fork(), cả cha và con đều tiếp tục thực thi từ vị trí sau lệnh fork(). Ưu điểm: Nhược điểm Ví dụ Do fork tạo song … Read more
Signal handler
Trong C++, bạn có thể dùng signal handler để bắt các tín hiệu hệ thống (như SIGINT khi nhấn Ctrl+C) raise() gửi signal cho chính processhiện tại. kill() gửi signal cho bất kỳ process (truyền vào PID).
Smart pointers trong C++
Raw pointer Các loại smart pointers ✅ Ưu điểm ⚠️ Nhược điểm Loại Khi nào dùng Ví dụ unique_ptr Một đối tượng chỉ có một chủ sở hữu Quản lý tài nguyên trong class shared_ptr Nhiều đối tượng cùng quản lý tài nguyên Đồ thị, cây, nhiều module cùng tham chiếu weak_ptr Quan sát đối … Read more