C# – Thread Signaling: Auto và Manual Reset Event

queue-people-standing-in-lineKhi làm việc với Thread, đôi lúc bạn cần các thread thực thi theo một trình tự nào đó để đảm bảo các tác vụ diễn ra một cách hợp lý. Như vậy, các thread cần phải sử dụng một cơ chế nào đó để đợi và thông báo cho nhau. Cơ chế này được gọi là Signaling và có nhiều cách thức để thực hiện, tuy nhiên trong bài này tôi chỉ tập trung giới thiệu về hai lớp AutoResetEvent ManualResetEvent.

Tiếp tục đọc

C# – Lập trình Thread với BackgroundWorker

BackgroundWorker là một component giúp cho việc lập trình Thread trở nên dễ dàng do các thuộc tính và event mà nó hỗ trợ sẵn. Trong bài viết này tôi sẽ giới thiệu cách sử dụng BackgroundWoker để làm một ví dụ tìm kiếm tập tin trong một dự án Windows Form. Qua đó bạn có thể thấy khả năng của đối tượng này và áp dụng vào những chương trình cụ thể.

Tiếp tục đọc

.Net – Tìm hiểu về Application Domain (AppDomain)

Application Domain (viết tắt AppDomain, đây cũng là tên lớp tương ứng trong .Net) có mục đích tạo một môi trường cách ly nằm bên trong một process, tương tự như các process hoạt động trong cùng một hệ điều hành. Bạn có thể sử dụng AppDomain để nạp các assembly và thực thi các tác vụ một cách riêng biệt trong cùng process. Bài viết này sẽ cho bạn thấy cách thức sử dụng và các lợi ích mà AppDomain đem lại.

Tiếp tục đọc

C# – Cơ bản về Thread

ThreadThread hay còn gọi là tiểu trình là khái niệm khá quen thuộc trong lập trình. Thread cho phép chương trình thực hiện đồng thời nhiều tác vụ, và giúp quá trình tương tác với người dùng không bị gián đoạn, lập trình song song và là kĩ thuật không thể thiếu trong các ứng dụng về mạng. Trong bài này, bạn sẽ được giới thiệu cơ bản về cách làm việc với thread cũng như kĩ thuật đồng bộ hóa và hiện tượng deadlock.

Tiếp tục đọc