рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ, рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЯреВрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред .NET рдкрд░реНрдпрд╛рд╡рд░рдг, рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВред рдЗрд╕ рдЖрд▓реЗрдЦ рдореЗрдВ рдкреГрд╖реНрдарднреВрдорд┐ рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рд╣реИ, рдФрд░ рдЗрд╕рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп C # рдореЗрдВ рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ рдЬрд▓реНрджреА рд╕реЗ рд╕реАрдЦрдирд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рдЪрд▓ рд░рд╣реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд╛рднреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рдФрд░ рдХреЛрдб рдЙрджрд╛рд╣рд░рдг рдкрд░ рдЖрдЧреЗ рдмрдврд╝реВрдВрдЧрд╛ред
using System; using System.Threading;
рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдЖрдкрдХреЛ рдХреНрдпрд╛ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ
System.Threading рдирд╛рдо рд╕реНрдерд╛рди рд╣реИред рдЗрд╕ рдиреЗрдорд╕реНрдкреЗрд╕ рдореЗрдВ рдРрд╕реА рдХрдХреНрд╖рд╛рдПрдВ рд╣реИрдВ рдЬреЛ рдорд▓реНрдЯреАрдереНрд░реЗрдбреЗрдб рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИрдВред рдФрд░ рд╡рд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдВ
рдереНрд░реЗрдб рдХреНрд▓рд╛рд╕ рдирд┐рд╣рд┐рдд рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдо рдмрд╛рдж рдореЗрдВ рдХреЛрдб рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдЖрдЧреЗ рд╣рдо рдПрдХ рд╕реНрдЯреНрд░реАрдо рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВред
Thread myThread = new Thread(func);
рдЗрд╕ рд╡рд░реНрдЧ рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЛ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдирд╛рдо рдХреЛ
рд╢реВрдиреНрдп рд╕реЗ рдкрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдорд╛рдирд╛рдВрддрд░ рдзрд╛рдЧреЗ рдореЗрдВ рдХрд╣рд╛ рдЬрд╛рдПрдЧрд╛ред рдЙрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рдирдП рдмрдирд╛рдП рдЧрдП рд╕реНрдЯреНрд░реАрдо рдХреЗ рдЕрдВрджрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд
рд╕реНрдЯрд╛рд░реНрдЯ () рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреА рд╕реНрдЯреНрд░реАрдо рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред
рдЗрд╕рд▓рд┐рдП, рдореБрдЦреНрдп рдФрд░ рджреНрд╡рд┐рддреАрдпрдХ рд╕реВрддреНрд░ рдПрдХ рд╕рд╛рде рд▓рдЧрднрдЧ рд╕рдорд╛рди рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рд╡реЗ 9 (рдЬреИрд╕рд╛ рдХрд┐ рдЦрд░реЛрдВрдЪ рд╕реЗ рд╣реБрдЖ), рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдирдВрдмрд░ рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЧрд┐рдирддреЗ рд╣реИрдВред рд╕реНрдерд┐рд░
рдереНрд░реЗрдб рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред
рд╕реЛ (0) рд╡рд┐рдзрд┐ред рдпрд╣ рдЙрд╕ рдзрд╛рдЧреЗ рдХреЛ рдирд┐рд▓рдВрдмрд┐рдд рдХрд░ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдЗрд╕реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдорд┐рд▓реАрд╕реЗрдХрдВрдб рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП рдкреИрджрд╛ рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдкреИрд░рд╛рдореАрдЯрд░ 0 рдХреЛ рдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдереНрд░реЗрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреВрд╕рд░реЗ рдереНрд░реЗрдб рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░реЛрдХрдирд╛ рд╣реЛрдЧрд╛ред
рдФрд░ рддрд╛рдХрд┐ рдХрдВрд╕реЛрд▓ рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рдмрдВрдж рди рд╣реЛ, рд╣рдо рдХреАрдмреЛрд░реНрдб рдЗрдирдкреБрдЯ (
Console.Read ) рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВрдЧреЗред рдирддреАрдЬрддрди, рдЖрдкрдХрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдХрд░реЗрдЧрд╛:
рдзрд╛рдЧрд╛ 1 рдЖрдЙрдЯрдкреБрдЯ 0
рд╕реНрдЯреНрд░реАрдо 2 рдЖрдЙрдЯрдкреБрдЯ 0
рд╕реНрдЯреНрд░реАрдо 1 рдЖрдЙрдЯрдкреБрдЯ 1
рд╕реНрдЯреНрд░реАрдо 1 рдЖрдЙрдЯрдкреБрдЯ 2
рд╕реНрдЯреНрд░реАрдо 1 рдЖрдЙрдЯрдкреБрдЯ 3
рд╕реНрдЯреНрд░реАрдо 2 рдЖрдЙрдЯрдкреБрдЯ 1
<...> рдЖрджрд┐
рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рд░ рдмрд╛рд░ рдЖрдЙрдЯрдкреБрдЯ рдкрд░рд┐рдгрд╛рдо рдЕрд▓рдЧ рд╣реЛрдЧрд╛ред рдпрд╣ рдХрдИ рдХрд╛рд░рдХреЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рджреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреНрд░рд╡рд╛рд╣ рд╣реИрдВ: рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдФрд░ рдкреГрд╖реНрдарднреВрдорд┐ред рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдкреНрд░рд╡рд╛рд╣ рд╣реЛрдиреЗ рдкрд░ рдкреГрд╖реНрдарднреВрдорд┐ рдереНрд░реЗрдбреНрд╕ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ,
рдореБрдЦреНрдп рдлрд╝рдВрдХреНрд╢рди рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдереНрд░реЗрдб рдореЗрдВ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рд╢реЗрд╖ рдзрд╛рдЧреЗ рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рдмрдирд╛рдП рдЧрдП рд╣реИрдВред рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдореБрдЦреНрдп рдзрд╛рдЧрд╛ рдбреЗрд░рд┐рд╡реЗрдЯрд┐рд╡ рдХреЗ рдЕрдВрдд рд╕реЗ рдкрд╣рд▓реЗ рд╕рдорд╛рдкреНрдд рди рд╣реЛред рдЗрд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо
IsAlive рдлрд╝реАрд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рд╕реНрдЯреНрд░реАрдо рд╕рдХреНрд░рд┐рдп рд╣реЛрдиреЗ рдкрд░ рд╡рд╛рдкрд╕ рд▓реМрдЯрддрд╛ рд╣реИред рдпрд╛
рдЬреНрд╡рд╛рдЗрди () рд╡рд┐рдзрд┐, рдЬреЛ рдЙрд╕ рдзрд╛рдЧреЗ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЗрд╕реЗ рдЙрд╕ рдзрд╛рдЧреЗ рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдЙрд╕рдХрд╛ рд╣реИред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рдо рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред
IsBackground рд╕реНрдЯреНрд░реАрдо
рдкреНрд░реЙрдкрд░реНрдЯреА рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐ рд╕реНрдЯреНрд░реАрдо рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рд╣реИ рдпрд╛ рдирд╣реАрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдо рдкреНрд░рд╡рд╛рд╣ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред
myThread.IsBackground = false;
рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рдореЗрдВ
рдореБрдЦреНрдп рд╡рд┐рдзрд┐ рдХреЗ рдЕрдВрджрд░ рдПрдХ рдирдпрд╛ рдзрд╛рдЧрд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЖрдЗрдП рдПрдХ рд╡рд░реНрдЧ рдмрдирд╛рдПрдВ рдЬреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдгрдХрд░реНрддрд╛ рдореЗрдВ рдПрдХ рдирдпрд╛ рд╕реВрддреНрд░ рдЦреЛрд▓реЗрдЧрд╛ред рд╣рдордиреЗ рдЬреЛ рд╡рд░реНрдЧ рдмрдирд╛рдпрд╛ рд╣реИ рд╡рд╣ рдЧрд┐рдирддреА рд╕реЗ рдирд┐рдкрдЯрдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЗрд╕ рдмрд╛рд░ рдпрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрдЦреНрдпрд╛ рддрдХ рдЧрд┐рдирд╛ рдЬрд╛рдПрдЧрд╛, рдЬреЛ рдХрд┐ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдзрд╛рд░рд╛ рдореЗрдВ рдкреНрд░рд╡рд╛рд╣рд┐рдд рдХрд░реЗрдЧрд╛ред
using System; using System.Threading; namespace ConsoleApplication1 { class Program { class myThread { Thread thread; public myThread(string name, int num)
рдЖрдЗрдП рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВред рд╣рдорд╛рд░реЗ
myThread рдХреНрд▓рд╛рд╕ рдХрд╛ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ 2 рдкреИрд░рд╛рдореАрдЯрд░ рд▓реЗрддрд╛ рд╣реИ: рдПрдХ рдкрдВрдХреНрддрд┐ рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдереНрд░реЗрдб рдХрд╛ рдирд╛рдо рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЬрд┐рд╕ рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЧрдгрдирд╛ рдХреЛ рд▓реВрдк рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдореЗрдВ, рд╣рдо рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ
рдлрдВрдХ рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рдЬреБрдбрд╝рд╛ рдПрдХ рдзрд╛рдЧрд╛ рдмрдирд╛рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рдирд┐рд░реНрдорд┐рдд рд╕реНрдЯреНрд░реАрдо рдХреЗ
рдирд╛рдо рдХреНрд╖реЗрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреА рд╕реНрдЯреНрд░реАрдо рдХреЛ рдирд╛рдо рджреЗрддреЗ рд╣реИрдВред рдФрд░ рд╣рдо рдЕрдкрдиреЗ рдкреНрд░рд╡рд╛рд╣ рдХреЛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ,
рдкреНрд░рд╛рд░рдВрдн рдлрд╝рдВрдХреНрд╢рди рдХреЛ рддрд░реНрдХ рджреЗрддреЗ рд╣реИрдВред
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдПрдХ рдзрд╛рд░рд╛ рджреНрд╡рд╛рд░рд╛ рдмреБрд▓рд╛рдпрд╛ рдЧрдпрд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЗрд╡рд▓ 1 рддрд░реНрдХ рд▓реЗ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдХреЗрд╡рд▓ рдкреНрд░рдХрд╛рд░ рдСрдмреНрдЬреЗрдХреНрдЯред
рдлрдВрдХ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ, рд▓реВрдк рдХреЗ рд▓рд┐рдП рд╕рдВрдЦреНрдпрд╛ рдПрдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕реЗ рдкрд╛рд░рд┐рдд рдХрд░ рджреЗрддреА рд╣реИ, рдФрд░ рдзрд╛рд░рд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддреА рд╣реИред
рдореБрдЦреНрдп рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ, рд╣рдо 3 рдкрд░реАрдХреНрд╖рдг рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдСрдкрд░реЗрд╢рди рдХрдВрд╕реЛрд▓ рдкрд░ рдирд┐рдореНрди рдкрд╛рда рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред
рдзрд╛рдЧрд╛ 1 рдЖрдЙрдЯрдкреБрдЯ 0
рдзрд╛рдЧрд╛ 1 рдЖрдЙрдЯрдкреБрдЯ 1
рдереНрд░реЗрдб 2 рдЖрдЙрдЯрдкреБрдЯ 0
рдереНрд░реЗрдб 2 рдЖрдЙрдЯрдкреБрдЯ 1
рдереНрд░реЗрдб 2 рдЖрдЙрдЯрдкреБрдЯ 2
рдереНрд░реЗрдб 2 рдЦрддреНрдо рд╣реЛ рдЧрдпрд╛ рд╣реИ
<...>
рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде, рдореИрдВ рдЕрдкрдирд╛ рд▓реЗрдЦ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдФрд░ рдпрджреНрдпрдкрд┐ рдзрд╛рд░рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдХрдИ рд╕рд╛рдзрди рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЕрдкреНрд░рднрд╛рд╡рд┐рдд рд░рд╣реЗ, рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рджреА рдЧрдИ рдЬрд╛рдирдХрд╛рд░реА рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧреАред