Tôi mới đến C# .Tôi đã học được rằng thông thường tất cả các chủ đề là tiền cảnh cho đến khi trừ khi bạn chỉ định rõ ràng nó là "nền" chủ đề sử dụng IsBackGround = true.Bối cảnh chủ đề trong C#
Một số nghi ngờ nảy sinh trong đầu tôi.
1) lợi thế của việc giữ một sợi như sợi nền là gì?
2) Khi thực hiện mã folowing:
static void Main(string[] args)
{
Thread worker = new Thread(SayHello);
worker.IsBackground = true;
worker.Start();
Console.WriteLine("Hello From Main");
}
static void SayHello()
{
Console.WriteLine("Hello World");
Console.ReadKey(true);
}
tôi cần phải sử dụng worker.Join() để giữ cho các chủ đề chính để chờ đợi như các chương trình chấm dứt ngay lập tức. Ngoài Join() tôi có thể sử dụng các kỹ thuật khác để giữ cho thread chính chờ đợi?
luồng trong C# là một điều khá thú vị. Tôi rất khuyên bạn nên ClR thông qua C# cuốn sách từ Jeffrey Richter. Ông có một lời giải thích từ các cửa sổ hạt nhân lên như thế nào chủ đề làm việc trong C#. Thật không may, nhiều người trong số các khái niệm này rơi trở lại vào C++ Win32 luồng api. – Spence
Bạn sẽ có nhiều niềm vui hơn với công cụ đồng bộ hóa chủ đề. Có một cái nhìn tại hệ thống.Các lớp Threading.Semaphore, ManualResetEvent, AutoResetEvent, Mutex và Interlocked. THey're tất cả rất hữu ích để làm công cụ luồng. – Spence
Cảm ơn Spence Cảm ơn bạn rất nhiều.Tôi sẽ có một cái nhìn vào nó. – user186973