Fredy  Larson

Fredy Larson

1595251815

#2 - Token Scopes in Laravel Passport OAuth 2.0

Itโ€™s very important to protect your APIs. And Token Scopes in Laravel Passport allow your API clients to request a specific set of permissions when requesting authorization to access an account. So, in this tutorial, you will learn how to use token scopes in the Passport package.

๐†๐ข๐ญ๐ก๐ฎ๐› ๐‘๐ž๐ฉ๐จ๐ฌ๐ข๐ญ๐จ๐ซ๐ฒ:
https://github.com/qirolab/laravel-passport-oAuth2-example
#๐Ÿ - ๐‹๐š๐ซ๐š๐ฏ๐ž๐ฅ ๐๐š๐ฌ๐ฌ๐ฉ๐จ๐ซ๐ญ ๐Ž๐€๐ฎ๐ญ๐ก๐Ÿ ๐’๐ž๐ซ๐ฏ๐ž๐ซ ๐ˆ๐ฆ๐ฉ๐ฅ๐ž๐ฆ๐ž๐ง๐ญ๐š๐ญ๐ข๐จ๐ง
https://www.youtube.com/watch?v=K7RfBgoeg48
#๐Ÿ‘ - ๐‘๐ž๐Ÿ๐ซ๐ž๐ฌ๐ก ๐ญ๐จ๐ค๐ž๐ง๐ฌ ๐ข๐ง ๐‹๐š๐ซ๐š๐ฏ๐ž๐ฅ ๐๐š๐ฌ๐ฌ๐ฉ๐จ๐ซ๐ญ ๐Ž๐€๐ฎ๐ญ๐ก๐Ÿ
https://www.youtube.com/watch?v=tT_U1gKvubM
๐‹๐š๐ซ๐š๐ฏ๐ž๐ฅ ๐๐š๐ฌ๐ฌ๐ฉ๐จ๐ซ๐ญ ๐€๐๐ˆ ๐€๐ฎ๐ญ๐ก๐ž๐ง๐ญ๐ข๐œ๐š๐ญ๐ข๐จ๐ง
https://www.youtube.com/watch?v=UKSQdg1uPbQ
#๐Ÿ: ๐’๐๐€ ๐€๐ฎ๐ญ๐ก๐ž๐ง๐ญ๐ข๐œ๐š๐ญ๐ข๐จ๐ง ๐ฎ๐ฌ๐ข๐ง๐  ๐‹๐š๐ซ๐š๐ฏ๐ž๐ฅ ๐’๐š๐ง๐œ๐ญ๐ฎ๐ฆ
https://www.youtube.com/watch?v=8Uwn5M6WTe0
#๐Ÿ: ๐€๐๐ˆ ๐“๐จ๐ค๐ž๐ง ๐€๐ฎ๐ญ๐ก๐ž๐ง๐ญ๐ข๐œ๐š๐ญ๐ข๐จ๐ง ๐ฎ๐ฌ๐ข๐ง๐  ๐‹๐š๐ซ๐š๐ฏ๐ž๐ฅ ๐’๐š๐ง๐œ๐ญ๐ฎ๐ฆ
https://www.youtube.com/watch?v=2bslfjKEAik

Laravel Passport Tutorials
https://www.youtube.com/playlist?list=PL1TrjkMQ8UbWqLEiPjsmuoTJNLKbcsYce

#laravel

What is GEEK

Buddha Community

#2 - Token Scopes in Laravel Passport OAuth 2.0
Harish Kumar

Harish Kumar

1592977392

Laravel Sanctum or Passport | What is OAuth?

https://www.youtube.com/watch?v=LE1TC4WS4CY

#laravel #php #passport #laravel-passport #oauth #oauth2

Seamus  Quitzon

Seamus Quitzon

1595201363

Php how to delete multiple rows through checkbox using ajax in laravel

First thing, we will need a table and i am creating products table for this example. So run the following query to create table.

CREATE TABLE `products` (
 `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
 `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
 `description` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
 `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
 `updated_at` datetime DEFAULT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci

Next, we will need to insert some dummy records in this table that will be deleted.

INSERT INTO `products` (`name`, `description`) VALUES

('Test product 1', 'Product description example1'),

('Test product 2', 'Product description example2'),

('Test product 3', 'Product description example3'),

('Test product 4', 'Product description example4'),

('Test product 5', 'Product description example5');

Now we are redy to create a model corresponding to this products table. Here we will create Product model. So letโ€™s create a model file Product.php file under app directory and put the code below.

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Product extends Model
{
    protected $fillable = [
        'name','description'
    ];
}

Step 2: Create Route

Now, in this second step we will create some routes to handle the request for this example. So opeen routes/web.php file and copy the routes as given below.

routes/web.php

Route::get('product', 'ProductController@index');
Route::delete('product/{id}', ['as'=>'product.destroy','uses'=>'ProductController@destroy']);
Route::delete('delete-multiple-product', ['as'=>'product.multiple-delete','uses'=>'ProductController@deleteMultiple']);

#laravel #delete multiple rows in laravel using ajax #laravel ajax delete #laravel ajax multiple checkbox delete #laravel delete multiple rows #laravel delete records using ajax #laravel multiple checkbox delete rows #laravel multiple delete

I am Developer

1602036957

Laravel 8 REST API Authentication with Passport Example Tutorial

Laravel 8 rest api authentication with passport tutorial, you will learn step by step how to create rest API with laravel 8 passport authentication. And as well as how to install and cofigure passport auth in laravel 8 app.

Laravel 8 API Authentication with Passport Tutorial

Step 1: Download Laravel 8 App
Step 2: Database Configuration
Step 3: Install Passport Auth
Step 4: Passport Configuration
Step 5: Run Migration
Step 6: Create APIs Route
Step 7: Create Passport Auth Controller
Step 8: Now Test Laravel REST API in Postman

https://www.tutsmake.com/laravel-8-rest-api-authentication-with-passport/

#laravel api authentication with passport #laravel 8 api authentication #laravel 8 api authentication token tutorial #laravel 8 api authentication using passport #laravel 8 api authentication session

ใ€ ๅˆๅฟƒ่€…ๅ‘ใ‘ใ€‘C่จ€่ชžใงใฎใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ ใฎๆฆ‚่ฆ

ใƒ‹ใƒฅใƒผใƒจใƒผใ‚ฏใงๅƒใใ€ใ‚ฆใ‚ฉใƒผใƒซ่ก—ไธญใฎใƒ—ใƒญใ‚ฐใƒฉใƒžใƒผใจ่ฉฑใ‚’ใ—ใฆใ„ใ‚‹ใจใ€ใปใจใ‚“ใฉใฎใƒชใ‚ขใƒซใ‚ฟใ‚คใƒ ใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใงๆœŸๅพ…ใ•ใ‚Œใ‚‹ๅ…ฑ้€šใฎ็Ÿฅ่ญ˜ใฎ็ณธใซๆฐ—ใฅใใพใ—ใŸใ€‚ใใฎ็Ÿฅ่ญ˜ใฏใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใจใ—ใฆ็Ÿฅใ‚‰ใ‚Œใฆใ„ใพใ™ใ€‚็งใฏใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐใฎไธ–็•Œใ‚’็งปๅ‹•ใ—ใ€ๆฝœๅœจ็š„ใชใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐๅ€™่ฃœ่€…ใซใ‚คใƒณใ‚ฟใƒ“ใƒฅใƒผใ‚’่กŒใฃใŸใฎใงใ€ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใซใคใ„ใฆใปใจใ‚“ใฉ็Ÿฅใ‚‰ใ‚Œใฆใ„ใชใ„ใ“ใจใ‚„ใ€ใ‚นใƒฌใƒƒใƒ‰ใŒ้ฉ็”จใ•ใ‚Œใ‚‹็†็”ฑใ‚„ๆ–นๆณ•ใซ้ฉšใ‹ใ•ใ‚Œใ‚‹ใ“ใจใฏๆฑบใ—ใฆใ‚ใ‚Šใพใ›ใ‚“ใ€‚Vance Morrisonใซใ‚ˆใฃใฆๆ›ธใ‹ใ‚ŒใŸไธ€้€ฃใฎๅ„ชใ‚ŒใŸ่จ˜ไบ‹ใงใ€MSDNใฏใ“ใฎๅ•้กŒใซๅฏพๅ‡ฆใ—ใ‚ˆใ†ใจใ—ใพใ—ใŸ๏ผš๏ผˆMSDNใฎ8ๆœˆๅทใ€ใ™ในใฆใฎ้–‹็™บ่€…ใŒใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใ‚ขใƒ—ใƒชใซใคใ„ใฆ็ŸฅใฃใฆใŠใในใใ“ใจใ€ใŠใ‚ˆใณ10ๆœˆๅทใฏใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใงใฎใƒญใƒผใƒญใƒƒใ‚ฏๆŠ€่ก“ใฎๅฝฑ้Ÿฟใ‚’็†่งฃใ™ใ‚‹ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„๏ผ‰ใ€‚ใ‚ขใƒ—ใƒชใ€‚

ใ“ใฎ่จ˜ไบ‹ใงใฏใ€ใ‚นใƒฌใƒƒใƒ‰ๅŒ–ใ€ใ‚นใƒฌใƒƒใƒ‰ๅŒ–ใŒไฝฟ็”จใ•ใ‚Œใ‚‹็†็”ฑใ€ใŠใ‚ˆใณ.NETใงใฎใ‚นใƒฌใƒƒใƒ‰ๅŒ–ใฎไฝฟ็”จๆ–นๆณ•ใซใคใ„ใฆ็ดนไป‹ใ—ใพใ™ใ€‚ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใฎ่ƒŒๅพŒใซใ‚ใ‚‹่ฌŽใ‚’ๅฎŒๅ…จใซๆ˜Žใ‚‰ใ‹ใซใ—ใ€ใใ‚Œใ‚’่ชฌๆ˜Žใ™ใ‚‹้š›ใซใ€ใ‚ณใƒผใƒ‰ๅ†…ใฎๆฝœๅœจ็š„ใชใ‚นใƒฌใƒƒใƒ‰้šœๅฎณใ‚’ๅ›ž้ฟใ™ใ‚‹ใฎใซๅฝน็ซ‹ใคใ“ใจใ‚’้ก˜ใฃใฆใ„ใพใ™ใ€‚

ใ‚นใƒฌใƒƒใƒ‰ใจใฏไฝ•ใงใ™ใ‹๏ผŸ

ใ™ในใฆใฎใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใฏใ€ๅฐ‘ใชใใจใ‚‚1ใคใฎใ‚นใƒฌใƒƒใƒ‰ใงๅฎŸ่กŒใ•ใ‚Œใพใ™ใ€‚ใงใฏใ€ใ‚นใƒฌใƒƒใƒ‰ใจใฏไฝ•ใงใ™ใ‹๏ผŸใ‚นใƒฌใƒƒใƒ‰ใฏใƒ—ใƒญใ‚ปใ‚นใซใ™ใŽใพใ›ใ‚“ใ€‚็งใฎๆŽจๆธฌใงใฏใ€็ณธใจใ„ใ†่จ€่‘‰ใฏใ€็น”ๆฉŸใง็ณธใ‚’็น”ใ‚ŠไธŠใ’ใ‚‹่ถ…่‡ช็„ถ็š„ใชใƒŸใƒฅใƒผใ‚บใฎใ‚ฎใƒชใ‚ทใƒฃ็ฅž่ฉฑใซ็”ฑๆฅใ—ใฆใ„ใ‚‹ใจๆ€ใ„ใพใ™ใ€‚ๅ„็ณธใฏใ€่ชฐใ‹ใฎไบบ็”Ÿใฎๆ™‚้–“ใฎ้“ใ‚’่กจใ—ใฆใ„ใพใ™ใ€‚ใ‚ใชใŸใŒใใฎ็ณธใ‚’ใ„ใ˜ใ‚‹ใจใ€ใ‚ใชใŸใฏไบบ็”Ÿใฎๆง‹้€ ใ‚’ไนฑใ—ใŸใ‚Šใ€ไบบ็”Ÿใฎใƒ—ใƒญใ‚ปใ‚นใ‚’ๅค‰ใˆใŸใ‚Šใ—ใพใ™ใ€‚ใ‚ณใƒณใƒ”ใƒฅใƒผใ‚ฟใƒผใงใฏใ€ใ‚นใƒฌใƒƒใƒ‰ใฏๆ™‚้–“ใฎ็ตŒ้Žใจใจใ‚‚ใซ็งปๅ‹•ใ™ใ‚‹ใƒ—ใƒญใ‚ปใ‚นใงใ™ใ€‚ใƒ—ใƒญใ‚ปใ‚นใฏไธ€้€ฃใฎ้ †ๆฌกใ‚นใƒ†ใƒƒใƒ—ใ‚’ๅฎŸ่กŒใ—ใ€ๅ„ใ‚นใƒ†ใƒƒใƒ—ใฏใ‚ณใƒผใƒ‰่กŒใ‚’ๅฎŸ่กŒใ—ใพใ™ใ€‚ใ‚นใƒ†ใƒƒใƒ—ใฏ้€ฃ็ถšใ—ใฆใ„ใ‚‹ใŸใ‚ใ€ๅ„ใ‚นใƒ†ใƒƒใƒ—ใซใฏไธ€ๅฎšใฎๆ™‚้–“ใŒใ‹ใ‹ใ‚Šใพใ™ใ€‚ไธ€้€ฃใฎใ‚นใƒ†ใƒƒใƒ—ใ‚’ๅฎŒไบ†ใ™ใ‚‹ใฎใซใ‹ใ‹ใ‚‹ๆ™‚้–“ใฏใ€ๅ„ใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐใ‚นใƒ†ใƒƒใƒ—ใฎๅฎŸ่กŒใซใ‹ใ‹ใ‚‹ๆ™‚้–“ใฎๅˆ่จˆใงใ™ใ€‚

ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใจใฏไฝ•ใงใ™ใ‹๏ผŸ

้•ทใ„้–“ใ€ใปใจใ‚“ใฉใฎใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณ๏ผˆ็ต„ใฟ่พผใฟใ‚ทใ‚นใƒ†ใƒ ใƒ—ใƒญใ‚ฐใƒฉใƒ ใ‚’้™คใ๏ผ‰ใฏใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใงใ—ใŸใ€‚ใ“ใ‚Œใฏใ€ใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณๅ…จไฝ“ใงใ‚นใƒฌใƒƒใƒ‰ใŒ1ใคใ—ใ‹ใชใ„ใ“ใจใ‚’ๆ„ๅ‘ณใ—ใพใ™ใ€‚่จˆ็ฎ—BใŒๅฎŒไบ†ใ™ใ‚‹ใพใงใ€่จˆ็ฎ—Aใ‚’ๅฎŸ่กŒใ™ใ‚‹ใ“ใจใฏใงใใพใ›ใ‚“ใ€‚ใƒ—ใƒญใ‚ฐใƒฉใƒ ใฏใ‚นใƒ†ใƒƒใƒ—1ใ‹ใ‚‰ๅง‹ใพใ‚Šใ€ๆœ€ๅพŒใฎใ‚นใƒ†ใƒƒใƒ—๏ผˆใ‚นใƒ†ใƒƒใƒ—10ใจๅ‘ผใณใพใ™๏ผ‰ใซๅˆฐ้”ใ™ใ‚‹ใพใง้ †ๆฌก็ถš่กŒใ—ใพใ™๏ผˆใ‚นใƒ†ใƒƒใƒ—2ใ€ใ‚นใƒ†ใƒƒใƒ—3ใ€ใ‚นใƒ†ใƒƒใƒ—4๏ผ‰ใ€‚ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใ‚’ไฝฟ็”จใ™ใ‚‹ใจใ€่ค‡ๆ•ฐใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ๅฎŸ่กŒใงใใพใ™ใ€‚ๅ„ใ‚นใƒฌใƒƒใƒ‰ใฏ็‹ฌ่‡ชใฎใƒ—ใƒญใ‚ปใ‚นใงๅฎŸ่กŒใ•ใ‚Œใพใ™ใ€‚ใ—ใŸใŒใฃใฆใ€็†่ซ–็š„ใซใฏใ€ใ‚ใ‚‹ใ‚นใƒฌใƒƒใƒ‰ใงใ‚นใƒ†ใƒƒใƒ—1ใ‚’ๅฎŸ่กŒใ—ใ€ๅŒๆ™‚ใซๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใงใ‚นใƒ†ใƒƒใƒ—2ใ‚’ๅฎŸ่กŒใงใใพใ™ใ€‚ๅŒๆ™‚ใซใ€ใ‚นใƒ†ใƒƒใƒ—3ใ‚’็‹ฌ่‡ชใฎใ‚นใƒฌใƒƒใƒ‰ใงๅฎŸ่กŒใ—ใ€ใ‚นใƒ†ใƒƒใƒ—4ใ‚’็‹ฌ่‡ชใฎใ‚นใƒฌใƒƒใƒ‰ใงๅฎŸ่กŒใ™ใ‚‹ใ“ใจใ‚‚ใงใใพใ™ใ€‚ใ—ใŸใŒใฃใฆใ€ใ‚นใƒ†ใƒƒใƒ—1ใ€ใ‚นใƒ†ใƒƒใƒ—2ใ€ใ‚นใƒ†ใƒƒใƒ—3ใ€ใŠใ‚ˆใณใ‚นใƒ†ใƒƒใƒ—4ใฏๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใพใ™ใ€‚็†่ซ–็š„ใซใฏใ€4ใคใฎใ‚นใƒ†ใƒƒใƒ—ใ™ในใฆใŒใปใผๅŒๆ™‚ใซใ‹ใ‹ใฃใŸๅ ดๅˆใ€ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใฎๅฎŸ่กŒใซใ‹ใ‹ใ‚‹ๆ™‚้–“ใฎ4ๅˆ†ใฎ1ใงใƒ—ใƒญใ‚ฐใƒฉใƒ ใ‚’็ต‚ไบ†ใงใใพใ™๏ผˆ4ใƒ—ใƒญใ‚ปใƒƒใ‚ตใƒžใ‚ทใƒณใ‚’ไฝฟ็”จใ—ใฆใ„ใ‚‹ใจไปฎๅฎš๏ผ‰ใ€‚ใงใฏใ€ใชใœใ™ในใฆใฎใƒ—ใƒญใ‚ฐใƒฉใƒ ใŒใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ๅŒ–ใ•ใ‚Œใฆใ„ใชใ„ใฎใงใ—ใ‚‡ใ†ใ‹ใ€‚ใ‚นใƒ”ใƒผใƒ‰ใจใจใ‚‚ใซใ€ใ‚ใชใŸใฏ่ค‡้›‘ใ•ใซ็›ด้ขใ™ใ‚‹ใ‹ใ‚‰ใงใ™ใ€‚ใ‚นใƒ†ใƒƒใƒ—1ใŒใ‚นใƒ†ใƒƒใƒ—2ใฎๆƒ…ๅ ฑใซไฝ•ใ‚‰ใ‹ใฎๅฝขใงไพๅญ˜ใ—ใฆใ„ใ‚‹ๅ ดๅˆใ‚’ๆƒณๅƒใ—ใฆใฟใฆใใ ใ•ใ„ใ€‚ใ‚นใƒ†ใƒƒใƒ—1ใŒใ‚นใƒ†ใƒƒใƒ—2ใฎๅ‰ใซ่จˆ็ฎ—ใ‚’็ต‚ไบ†ใ—ใŸๅ ดๅˆใ€ใพใŸใฏใใฎ้€†ใฎๅ ดๅˆใ€ใƒ—ใƒญใ‚ฐใƒฉใƒ ใŒๆญฃใ—ใๅฎŸ่กŒใ•ใ‚Œใชใ„ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚

็ใ—ใ„ใ‚ขใƒŠใƒญใ‚ธใƒผ

ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใ‚’่€ƒใˆใ‚‹ๅˆฅใฎๆ–นๆณ•ใฏใ€ไบบไฝ“ใ‚’่€ƒๆ…ฎใ™ใ‚‹ใ“ใจใงใ™ใ€‚ไฝ“ใฎๅ„ๅ™จๅฎ˜๏ผˆๅฟƒ่‡“ใ€่‚บใ€่‚่‡“ใ€่„ณ๏ผ‰ใฏใ™ในใฆใƒ—ใƒญใ‚ปใ‚นใซ้–ขไธŽใ—ใฆใ„ใพใ™ใ€‚ๅ„ใƒ—ใƒญใ‚ปใ‚นใฏๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใพใ™ใ€‚ๅ„่‡“ๅ™จใŒใƒ—ใƒญใ‚ปใ‚นใฎใ‚นใƒ†ใƒƒใƒ—ใจใ—ใฆๅฎŸ่กŒใ•ใ‚ŒใŸๅ ดๅˆใ‚’ๆƒณๅƒใ—ใฆใฟใฆใใ ใ•ใ„ใ€‚ๆœ€ๅˆใซๅฟƒ่‡“ใ€ๆฌกใซ่„ณใ€ๆฌกใซ่‚่‡“ใ€ๆฌกใซ่‚บใงใ™ใ€‚็งใŸใกใฏใŠใใ‚‰ใๆญปใ‚“ใงใ—ใพใ†ใงใ—ใ‚‡ใ†ใ€‚ใคใพใ‚Šใ€ไบบไฝ“ใฏ1ใคใฎๅคงใใชใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใฎใ‚ˆใ†ใชใ‚‚ใฎใงใ™ใ€‚ใ™ในใฆใฎ่‡“ๅ™จใฏๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใ‚‹ใƒ—ใƒญใ‚ปใ‚นใงใ‚ใ‚Šใ€ใ“ใ‚Œใ‚‰ใฎใƒ—ใƒญใ‚ปใ‚นใฏใ™ในใฆ็›ธไบ’ใซไพๅญ˜ใ—ใฆใ„ใพใ™ใ€‚ใ“ใ‚Œใ‚‰ใฎใƒ—ใƒญใ‚ปใ‚นใฏใ™ในใฆใ€็ฅž็ตŒไฟกๅทใ€่ก€ๆตใ€ๅŒ–ๅญฆ็š„ใƒˆใƒชใ‚ฌใƒผใ‚’ไป‹ใ—ใฆ้€šไฟกใ—ใพใ™ใ€‚ใ™ในใฆใฎใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใจๅŒๆง˜ใซใ€ไบบไฝ“ใฏ้žๅธธใซ่ค‡้›‘ใงใ™ใ€‚ไธ€้ƒจใฎใƒ—ใƒญใ‚ปใ‚นใŒไป–ใฎใƒ—ใƒญใ‚ปใ‚นใ‹ใ‚‰ๆƒ…ๅ ฑใ‚’ๅ–ๅพ—ใ—ใชใ„ๅ ดๅˆใ€ใพใŸใฏ็‰นๅฎšใฎใƒ—ใƒญใ‚ปใ‚นใŒ้…ใใชใฃใŸใ‚Š้€ŸใใชใฃใŸใ‚Šใ™ใ‚‹ใจใ€ๅŒปๅญฆ็š„ใชๅ•้กŒใŒ็™บ็”Ÿใ—ใพใ™ใ€‚ใใ‚Œใ‹'

ใ„ใคใ‚นใƒฌใƒƒใƒ‰ๅŒ–ใ™ใ‚‹ใ‹

ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใฏใ€ใƒ—ใƒญใ‚ฐใƒฉใƒ ใ‚’ใ‚ˆใ‚ŠๅŠน็Ž‡็š„ใซๅฎŸ่กŒใ—ใŸใ„็Šถๆณใงๆœ€ใ‚‚ใ‚ˆใไฝฟ็”จใ•ใ‚Œใพใ™ใ€‚ใŸใจใˆใฐใ€ใ‚ฆใ‚ฃใƒณใƒ‰ใ‚ฆใƒ•ใ‚ฉใƒผใƒ ใƒ—ใƒญใ‚ฐใƒฉใƒ ใฎไธญใซใ€ๅฎŸ่กŒใซ1็ง’ไปฅไธŠใ‹ใ‹ใ‚Šใ€็นฐใ‚Š่ฟ”ใ—ๅฎŸ่กŒใ™ใ‚‹ๅฟ…่ฆใฎใ‚ใ‚‹ใƒกใ‚ฝใƒƒใƒ‰๏ผˆmethod_Aใจๅ‘ผใณใพใ™๏ผ‰ใŒๅซใพใ‚Œใฆใ„ใ‚‹ใจใ—ใพใ™ใ€‚ใƒ—ใƒญใ‚ฐใƒฉใƒ ๅ…จไฝ“ใŒๅ˜ไธ€ใฎใ‚นใƒฌใƒƒใƒ‰ใงๅฎŸ่กŒใ•ใ‚ŒใŸๅ ดๅˆใ€ใƒœใ‚ฟใƒณใฎๆŠผไธ‹ใŒๆญฃใ—ใๆฉŸ่ƒฝใ—ใชใ‹ใฃใŸใ‚Šใ€ๅ…ฅๅŠ›ใŒๅฐ‘ใ—้…ใใชใฃใŸใ‚Šใ™ใ‚‹ใ“ใจใŒใ‚ใ‚Šใพใ™ใ€‚method_Aใฎ่จˆ็ฎ—้‡ใŒๅคšใ™ใŽใ‚‹ใจใ€ใ‚ฆใ‚ฃใƒณใƒ‰ใ‚ฆใƒ•ใ‚ฉใƒผใƒ ใฎ็‰นๅฎšใฎ้ƒจๅˆ†ใŒใพใฃใŸใๆฉŸ่ƒฝใ—ใชใ„ใ“ใจใซๆฐ—ไป˜ใใ‹ใ‚‚ใ—ใ‚Œใพใ›ใ‚“ใ€‚ใ“ใฎ่จฑๅฎนใงใใชใ„ใƒ—ใƒญใ‚ฐใƒฉใƒ ใฎๅ‹•ไฝœใฏใ€ใƒ—ใƒญใ‚ฐใƒฉใƒ ใซใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใŒๅฟ…่ฆใงใ‚ใ‚‹ใ“ใจใ‚’็คบใ—ใฆใ„ใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ๅŒ–ใŒๅฟ…่ฆใซใชใ‚‹ใ‚‚ใ†1ใคใฎไธ€่ˆฌ็š„ใชใ‚ทใƒŠใƒชใ‚ชใฏใ€ใƒกใƒƒใ‚ปใƒผใ‚ธใƒณใ‚ฐใ‚ทใ‚นใƒ†ใƒ ใงใ™ใ€‚ใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใซๅคšๆ•ฐใฎใƒกใƒƒใ‚ปใƒผใ‚ธใŒ้€ไฟกใ•ใ‚Œใฆใ„ใ‚‹ๅ ดๅˆใฏใ€ใƒกใ‚คใƒณใฎๅ‡ฆ็†ใƒ—ใƒญใ‚ฐใƒฉใƒ ใฎๅฎŸ่กŒใจๅŒๆ™‚ใซใใ‚Œใ‚‰ใ‚’ใ‚ญใƒฃใƒ—ใƒใƒฃใ—ใ€้ฉๅˆ‡ใซ้…ๅธƒใ™ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚Šใพใ™ใ€‚้‡ใ„ๅ‡ฆ็†ใ‚’ๅฎŸ่กŒใ—ใฆใ„ใ‚‹ใจใใซไธ€้€ฃใฎใƒกใƒƒใ‚ปใƒผใ‚ธใ‚’ๅŠน็Ž‡็š„ใซใ‚ญใƒฃใƒ—ใƒใƒฃใ™ใ‚‹ใ“ใจใฏใงใใพใ›ใ‚“ใ€‚ใใ†ใ—ใชใ„ใจใ€ใƒกใƒƒใ‚ปใƒผใ‚ธใ‚’่ฆ‹้€ƒใ™ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚่ค‡ๆ•ฐใฎใ‚นใƒฌใƒƒใƒ‰ใฏใ€่ค‡ๆ•ฐใฎใƒ—ใƒญใ‚ปใ‚นใŒๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใ‚‹็ต„็ซ‹ใƒฉใ‚คใƒณๆ–นๅผใงไฝฟ็”จใ™ใ‚‹ใ“ใจใ‚‚ใงใใพใ™ใ€‚ใŸใจใˆใฐใ€ใƒ—ใƒญใ‚ปใ‚นใŒใ‚นใƒฌใƒƒใƒ‰ใงใƒ‡ใƒผใ‚ฟใ‚’ๅŽ้›†ใ™ใ‚‹ใจใ€1ใคใฎใƒ—ใƒญใ‚ปใ‚นใŒใƒ‡ใƒผใ‚ฟใ‚’ใƒ•ใ‚ฃใƒซใ‚ฟใƒชใƒณใ‚ฐใ—ใ€1ใคใฎใƒ—ใƒญใ‚ปใ‚นใŒใƒ‡ใƒผใ‚ฟใ‚’ใƒ‡ใƒผใ‚ฟใƒ™ใƒผใ‚นใจ็…งๅˆใ—ใพใ™ใ€‚ใ“ใ‚Œใ‚‰ใฎๅ„ใ‚ทใƒŠใƒชใ‚ชใฏใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใฎไธ€่ˆฌ็š„ใชไฝฟ็”จๆณ•ใงใ‚ใ‚Šใ€ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใงๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ๅŒๆง˜ใฎใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใฎใƒ‘ใƒ•ใ‚ฉใƒผใƒžใƒณใ‚นใ‚’ๅคงๅน…ใซๅ‘ไธŠใ•ใ›ใพใ™ใ€‚ใใ†ใ—ใชใ„ใจใ€ใƒกใƒƒใ‚ปใƒผใ‚ธใ‚’่ฆ‹้€ƒใ™ๅฏ่ƒฝๆ€งใŒใ‚ใ‚‹ใŸใ‚ใงใ™ใ€‚่ค‡ๆ•ฐใฎใ‚นใƒฌใƒƒใƒ‰ใฏใ€่ค‡ๆ•ฐใฎใƒ—ใƒญใ‚ปใ‚นใŒๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใ‚‹็ต„็ซ‹ใƒฉใ‚คใƒณๆ–นๅผใงไฝฟ็”จใ™ใ‚‹ใ“ใจใ‚‚ใงใใพใ™ใ€‚ใŸใจใˆใฐใ€ใƒ—ใƒญใ‚ปใ‚นใŒใ‚นใƒฌใƒƒใƒ‰ใงใƒ‡ใƒผใ‚ฟใ‚’ๅŽ้›†ใ™ใ‚‹ใจใ€1ใคใฎใƒ—ใƒญใ‚ปใ‚นใŒใƒ‡ใƒผใ‚ฟใ‚’ใƒ•ใ‚ฃใƒซใ‚ฟใƒชใƒณใ‚ฐใ—ใ€1ใคใฎใƒ—ใƒญใ‚ปใ‚นใŒใƒ‡ใƒผใ‚ฟใ‚’ใƒ‡ใƒผใ‚ฟใƒ™ใƒผใ‚นใจ็…งๅˆใ—ใพใ™ใ€‚ใ“ใ‚Œใ‚‰ใฎๅ„ใ‚ทใƒŠใƒชใ‚ชใฏใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใฎไธ€่ˆฌ็š„ใชไฝฟ็”จๆณ•ใงใ‚ใ‚Šใ€ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใงๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ๅŒๆง˜ใฎใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใฎใƒ‘ใƒ•ใ‚ฉใƒผใƒžใƒณใ‚นใ‚’ๅคงๅน…ใซๅ‘ไธŠใ•ใ›ใพใ™ใ€‚ใใ†ใ—ใชใ„ใจใ€ใƒกใƒƒใ‚ปใƒผใ‚ธใ‚’่ฆ‹้€ƒใ™ๅฏ่ƒฝๆ€งใŒใ‚ใ‚‹ใŸใ‚ใงใ™ใ€‚่ค‡ๆ•ฐใฎใ‚นใƒฌใƒƒใƒ‰ใฏใ€่ค‡ๆ•ฐใฎใƒ—ใƒญใ‚ปใ‚นใŒๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใ‚‹็ต„็ซ‹ใƒฉใ‚คใƒณๆ–นๅผใงไฝฟ็”จใ™ใ‚‹ใ“ใจใ‚‚ใงใใพใ™ใ€‚ใŸใจใˆใฐใ€ใƒ—ใƒญใ‚ปใ‚นใŒใ‚นใƒฌใƒƒใƒ‰ใงใƒ‡ใƒผใ‚ฟใ‚’ๅŽ้›†ใ™ใ‚‹ใจใ€1ใคใฎใƒ—ใƒญใ‚ปใ‚นใŒใƒ‡ใƒผใ‚ฟใ‚’ใƒ•ใ‚ฃใƒซใ‚ฟใƒชใƒณใ‚ฐใ—ใ€1ใคใฎใƒ—ใƒญใ‚ปใ‚นใŒใƒ‡ใƒผใ‚ฟใ‚’ใƒ‡ใƒผใ‚ฟใƒ™ใƒผใ‚นใจ็…งๅˆใ—ใพใ™ใ€‚ใ“ใ‚Œใ‚‰ใฎๅ„ใ‚ทใƒŠใƒชใ‚ชใฏใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใฎไธ€่ˆฌ็š„ใชไฝฟ็”จๆณ•ใงใ‚ใ‚Šใ€ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใงๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ๅŒๆง˜ใฎใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใฎใƒ‘ใƒ•ใ‚ฉใƒผใƒžใƒณใ‚นใ‚’ๅคงๅน…ใซๅ‘ไธŠใ•ใ›ใพใ™ใ€‚

ใ‚นใƒฌใƒƒใƒ‰ใ—ใชใ„ๅ ดๅˆ

ๅˆๅฟƒ่€…ใฎใƒ—ใƒญใ‚ฐใƒฉใƒžใƒผใŒๆœ€ๅˆใซใ‚นใƒฌใƒƒใƒ‰ๅŒ–ใ‚’ๅญฆใถใจใใ€ๅฝผใ‚‰ใฏใƒ—ใƒญใ‚ฐใƒฉใƒ ใงใ‚นใƒฌใƒƒใƒ‰ๅŒ–ใ‚’ไฝฟ็”จใ™ใ‚‹ๅฏ่ƒฝๆ€งใซ้ญ…ไบ†ใ•ใ‚Œใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ๅฝผใ‚‰ใฏๅฎŸ้š›ใซใ‚นใƒฌใƒƒใƒ‰ใƒใƒƒใƒ”ใƒผใซใชใ‚‹ใ‹ใ‚‚ใ—ใ‚Œใพใ›ใ‚“ใ€‚  ่ฉณใ—ใ่ชฌๆ˜Žใ•ใ›ใฆใใ ใ•ใ„ใ€

1ๆ—ฅ็›ฎ๏ผ‰ใƒ—ใƒญใ‚ฐใƒฉใƒžใƒผใฏใ€ใ‚นใƒฌใƒƒใƒ‰ใ‚’็”Ÿๆˆใงใใ‚‹ใ“ใจใ‚’ๅญฆใณใ€ใƒ—ใƒญใ‚ฐใƒฉใƒ ใง1ใคใฎๆ–ฐใ—ใ„ใ‚นใƒฌใƒƒใƒ‰Cool๏ผใฎไฝœๆˆใ‚’้–‹ๅง‹ใ—ใพใ™ ใ€‚

2ๆ—ฅ็›ฎ๏ผ‰ใƒ—ใƒญใ‚ฐใƒฉใƒžใƒผใฏใ€ใ€Œใƒ—ใƒญใ‚ฐใƒฉใƒ ใฎไธ€้ƒจใงไป–ใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’็”Ÿๆˆใ™ใ‚‹ใ“ใจใงใ€ใ“ใ‚Œใ‚’ใ•ใ‚‰ใซๅŠน็Ž‡็š„ใซใ™ใ‚‹ใ“ใจใŒใงใใพใ™๏ผใ€ใจ่จ€ใ„ใพใ™ใ€‚

3ๆ—ฅ็›ฎ๏ผ‰P๏ผšใ€Œใ‚ใ‚ใ€ใ‚นใƒฌใƒƒใƒ‰ๅ†…ใงใ‚นใƒฌใƒƒใƒ‰ใ‚’ใƒ•ใ‚ฉใƒผใ‚ฏใ™ใ‚‹ใ“ใจใ‚‚ใงใใ€ๆœฌๅฝ“ใซๅŠน็Ž‡ใŒๅ‘ไธŠใ—ใพใ™!!ใ€

4ๆ—ฅ็›ฎ๏ผ‰P๏ผšใ€Œๅฅ‡ๅฆ™ใช็ตๆžœใŒๅ‡บใฆใ„ใ‚‹ใ‚ˆใ†ใงใ™ใŒใ€ใใ‚Œใฏๅ•้กŒใ‚ใ‚Šใพใ›ใ‚“ใ€‚ไปŠใฏ็„ก่ฆ–ใ—ใพใ™ใ€‚ใ€

5ๆ—ฅ็›ฎ๏ผ‰ใ€Œใ†ใƒผใ‚“ใ€widgetXๅค‰ๆ•ฐใซๅ€คใŒใ‚ใ‚‹ๅ ดๅˆใ‚‚ใ‚ใ‚Šใพใ™ใŒใ€ใพใฃใŸใ่จญๅฎšใ•ใ‚Œใฆใ„ใชใ„ใ‚ˆใ†ใซ่ฆ‹ใˆใ‚‹ๅ ดๅˆใ‚‚ใ‚ใ‚Šใพใ™ใ€‚ใ‚ณใƒณใƒ”ใƒฅใƒผใ‚ฟใƒผใŒๆฉŸ่ƒฝใ—ใฆใ„ใชใ„ใŸใ‚ใ€ใƒ‡ใƒใƒƒใ‚ฌใƒผใ‚’ๅฎŸ่กŒใ™ใ‚‹ใ ใ‘ใงใ™ใ€ใ€‚

9ๆ—ฅ็›ฎ๏ผ‰ใ€Œใ“ใฎใใใฃใŸใ‚Œ๏ผˆใ‚ˆใ‚Šๅผทใ„่จ€่ชž๏ผ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใฏใ‚ใกใ“ใกใงใ‚ธใƒฃใƒณใƒ—ใ—ใฆใ„ใพใ™!!ไฝ•ใŒ่ตทใ“ใฃใฆใ„ใ‚‹ใฎใ‹็†่งฃใงใใพใ›ใ‚“๏ผใ€

2้€ฑ็›ฎ๏ผ‰ๆ™‚ใ€…ใ€ใƒ—ใƒญใ‚ฐใƒฉใƒ ใฏใŸใ ใใ“ใซๅบงใฃใฆใ€ใพใฃใŸใไฝ•ใ‚‚ใ—ใพใ›ใ‚“๏ผใƒ˜ใƒซใƒ—๏ผ๏ผ๏ผ๏ผ๏ผ

ใŠใชใ˜ใฟใงใ™ใ‹๏ผŸใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใ‚’ๅˆใ‚ใฆ่จญ่จˆใ—ใ‚ˆใ†ใจใ—ใŸใปใจใ‚“ใฉใฎไบบใฏใ€ใ‚นใƒฌใƒƒใƒ‰ใฎ่จญ่จˆ็Ÿฅ่ญ˜ใŒ่ฑŠๅฏŒใงใ‚ใฃใฆใ‚‚ใ€ใŠใใ‚‰ใใ“ใ‚Œใ‚‰ใฎๆฏŽๆ—ฅใฎ็ฎ‡ๆกๆ›ธใใฎๅฐ‘ใชใใจใ‚‚1ใคใพใŸใฏ2ใคใ‚’็ตŒ้จ“ใ—ใŸใ“ใจใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ๅŒ–ใŒๆ‚ชใ„ใ“ใจใ ใจใปใฎใ‚ใ‹ใ—ใฆใ„ใ‚‹ใ‚ใ‘ใงใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใƒ—ใƒญใ‚ฐใƒฉใƒ ใงใ‚นใƒฌใƒƒใƒ‰ๅŒ–ใฎๅŠน็Ž‡ใ‚’ไธŠใ’ใ‚‹ใƒ—ใƒญใ‚ปใ‚นใงใฏใ€้žๅธธใซๆณจๆ„ใ—ใฆใใ ใ•ใ„ใ€‚  ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใจใฏ็•ฐใชใ‚Šใ€ๅŒๆ™‚ใซๅคšใใฎใƒ—ใƒญใ‚ปใ‚นใ‚’ๅ‡ฆ็†ใ—ใฆใ„ใ‚‹ใŸใ‚ใ€่ค‡ๆ•ฐใฎๅพ“ๅฑžๅค‰ๆ•ฐใ‚’ๆŒใค่ค‡ๆ•ฐใฎใƒ—ใƒญใ‚ปใ‚นใ‚’่ฟฝ่ทกใ™ใ‚‹ใฎใฏ้žๅธธใซ้›ฃใ—ใ„ๅ ดๅˆใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚ธใƒฃใ‚ฐใƒชใƒณใ‚ฐใจๅŒใ˜ใ‚ˆใ†ใซใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใ‚’่€ƒใˆใฆใใ ใ•ใ„ใ€‚ๆ‰‹ใง1ใคใฎใƒœใƒผใƒซใ‚’ใ‚ธใƒฃใ‚ฐใƒชใƒณใ‚ฐใ™ใ‚‹ใฎใฏ๏ผˆ้€€ๅฑˆใงใฏใ‚ใ‚Šใพใ™ใŒ๏ผ‰ใ‹ใชใ‚Š็ฐกๅ˜ใงใ™ใ€‚ใŸใ ใ—ใ€ใ“ใ‚Œใ‚‰ใฎใƒœใƒผใƒซใฎใ†ใก2ใคใ‚’็ฉบไธญใซ็ฝฎใใ‚ˆใ†ใซๆŒ‘ๆˆฆใ•ใ‚ŒใŸๅ ดๅˆใ€ใใฎไฝœๆฅญใฏๅฐ‘ใ—้›ฃใ—ใใชใ‚Šใพใ™ใ€‚3ใ€4ใ€ใŠใ‚ˆใณ5ใฎๅ ดๅˆใ€ใƒœใƒผใƒซใฏๆฌก็ฌฌใซ้›ฃใ—ใใชใ‚Šใพใ™ใ€‚ใƒœใƒผใƒซใฎๆ•ฐใŒๅข—ใˆใ‚‹ใจใ€ๅฎŸ้š›ใซใƒœใƒผใƒซใ‚’่ฝใจใ™ๅฏ่ƒฝๆ€งใŒ้ซ˜ใใชใ‚Šใพใ™ใ€‚ ไธ€ๅบฆใซใŸใใ•ใ‚“ใฎใƒœใƒผใƒซใ‚’ใ‚ธใƒฃใ‚ฐใƒชใƒณใ‚ฐใ™ใ‚‹ใซใฏใ€็Ÿฅ่ญ˜ใ€ใ‚นใ‚ญใƒซใ€ๆญฃ็ขบใชใ‚ฟใ‚คใƒŸใƒณใ‚ฐใŒๅฟ…่ฆใงใ™ใ€‚ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใ‚‚ใใ†ใงใ™ใ€‚ 

ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰

ๅ›ณ1-ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใฏใ‚ธใƒฃใ‚ฐใƒชใƒณใ‚ฐใƒ—ใƒญใ‚ปใ‚นใฎใ‚ˆใ†ใชใ‚‚ใฎใงใ™

 
ใ‚นใƒฌใƒƒใƒ‡ใ‚ฃใƒณใ‚ฐใฎๅ•้กŒ

ใƒ—ใƒญใ‚ฐใƒฉใƒ ๅ†…ใฎใ™ในใฆใฎใƒ—ใƒญใ‚ปใ‚นใŒ็›ธไบ’ใซๆŽ’ไป–็š„ใงใ‚ใ‚‹ๅ ดๅˆใ€ใคใพใ‚Šใ€ใƒ—ใƒญใ‚ปใ‚นใŒไป–ใฎใƒ—ใƒญใ‚ปใ‚นใซใพใฃใŸใไพๅญ˜ใ—ใฆใ„ใชใ„ๅ ดๅˆใ€่ค‡ๆ•ฐใฎใ‚นใƒฌใƒƒใƒ‰ๅŒ–ใฏ้žๅธธใซ็ฐกๅ˜ใงใ€ๅ•้กŒใฏใปใจใ‚“ใฉ็™บ็”Ÿใ—ใพใ›ใ‚“ใ€‚ๅ„ใƒ—ใƒญใ‚ปใ‚นใฏใ€ไป–ใฎใƒ—ใƒญใ‚ปใ‚นใซ็…ฉใ‚ใ•ใ‚Œใ‚‹ใ“ใจใชใใ€็‹ฌ่‡ชใฎใƒใƒƒใƒ”ใƒผใ‚ณใƒผใ‚นใงๅฎŸ่กŒใ•ใ‚Œใพใ™ใ€‚ใŸใ ใ—ใ€่ค‡ๆ•ฐใฎใƒ—ใƒญใ‚ปใ‚นใŒไป–ใฎใƒ—ใƒญใ‚ปใ‚นใซใ‚ˆใฃใฆไฝฟ็”จใ•ใ‚Œใฆใ„ใ‚‹ใƒกใƒขใƒชใฎ่ชญใฟๅ–ใ‚ŠใพใŸใฏๆ›ธใ่พผใฟใ‚’่กŒใ†ๅฟ…่ฆใŒใ‚ใ‚‹ๅ ดๅˆใ€ๅ•้กŒใŒ็™บ็”Ÿใ™ใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ใŸใจใˆใฐใ€ใƒ—ใƒญใ‚ปใ‚น๏ผƒ1ใจใƒ—ใƒญใ‚ปใ‚น๏ผƒ2ใฎ2ใคใฎใƒ—ใƒญใ‚ปใ‚นใŒใ‚ใ‚‹ใจใ—ใพใ™ใ€‚ไธกๆ–นใฎใƒ—ใƒญใ‚ปใ‚นใŒๅค‰ๆ•ฐXใ‚’ๅ…ฑๆœ‰ใ—ใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ปใ‚น๏ผƒ1ใŒๆœ€ๅˆใซๅ€ค5ใฎๅค‰ๆ•ฐXใ‚’ๆ›ธใ่พผใฟใ€ใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ปใ‚น๏ผƒ2ใŒๆฌกใซๅ€ค-3ใฎๅค‰ๆ•ฐXใ‚’ๆ›ธใ่พผใ‚€ๅ ดๅˆใ€Xใฎๆœ€็ต‚ๅ€คใฏ-3ใงใ™ใ€‚ใŸใ ใ—ใ€ใƒ—ใƒญใ‚ปใ‚น๏ผƒ2ใŒๆœ€ๅˆใซๅ€ค-3ใฎๅค‰ๆ•ฐXใ‚’ๆ›ธใ่พผใฟใ€ๆฌกใซใƒ—ใƒญใ‚ปใ‚น๏ผƒ1ใŒๅ€ค5ใฎๅค‰ๆ•ฐXใ‚’ๆ›ธใ่พผใ‚€ๅ ดๅˆใ€Xใฎๆœ€็ต‚ๅ€คใฏ5ใงใ™ใ€‚Xใ‚’่จญๅฎšใงใใ‚‹ใƒ—ใƒญใ‚ปใ‚นใŒใƒ—ใƒญใ‚ปใ‚น๏ผƒ1ใพใŸใฏใƒ—ใƒญใ‚ปใ‚น๏ผƒ2ใฎ็Ÿฅ่ญ˜ใ‚’ๆŒใฃใฆใ„ใชใ„ๅ ดๅˆใ€Xใฏใ€ๆœ€ๅˆใซXใซๅˆฐ้”ใ—ใŸใ‚นใƒฌใƒƒใƒ‰ใซๅฟœใ˜ใฆ็•ฐใชใ‚‹ๆœ€็ต‚ๅ€คใซใชใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใงใฏใ€ใ™ในใฆใŒ้ †็•ชใซ็ถšใใŸใ‚ใ€ใ“ใ‚ŒใŒ็™บ็”Ÿใ™ใ‚‹ๅฏ่ƒฝๆ€งใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใงใฏใ€ไธฆๅˆ—ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ใƒ—ใƒญใ‚ปใ‚นใŒใชใ„ใŸใ‚ใ€Xใฏๅธธใซๆœ€ๅˆใซใƒกใ‚ฝใƒƒใƒ‰๏ผƒ1ใซใ‚ˆใฃใฆ่จญๅฎšใ•ใ‚Œ๏ผˆๆœ€ๅˆใซๅ‘ผใณๅ‡บใ•ใ‚ŒใŸๅ ดๅˆ๏ผ‰ใ€ๆฌกใซใƒกใ‚ฝใƒƒใƒ‰๏ผƒ2ใซใ‚ˆใฃใฆ่จญๅฎšใ•ใ‚Œใพใ™ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใซใฏ้ฉšใใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใใ‚Œใฏใ‚นใƒ†ใƒƒใƒ—ใƒใ‚คใ‚นใƒ†ใƒƒใƒ—ใงใ™ใ€‚ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใ‚’ไฝฟ็”จใ™ใ‚‹ใจใ€2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒๆ™‚ใซใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใ€็ตๆžœใซๅคงๆททไนฑใ‚’ใ‚‚ใŸใ‚‰ใ™ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใฎๅ•้กŒใฏใ€ๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒใ˜ใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใฆๅ…ฑๆœ‰ใƒ‡ใƒผใ‚ฟใ‚’ๆ“ไฝœใงใใ‚‹ใ‚ˆใ†ใซใ—ใชใŒใ‚‰ใ€ๅ…ฑๆœ‰ใƒกใƒขใƒชใซใ‚ขใ‚ฏใ‚ปใ‚นใ™ใ‚‹1ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ๅˆถๅพกใ™ใ‚‹ไฝ•ใ‚‰ใ‹ใฎๆ–นๆณ•ใŒๅฟ…่ฆใชใ“ใจใงใ™ใ€‚Xใฏใ€ใฉใฎใ‚นใƒฌใƒƒใƒ‰ใŒๆœ€ๅˆใซXใซๅˆฐ้”ใ—ใŸใ‹ใซใ‚ˆใฃใฆใ€ๆœ€็ต‚็š„ใซ็•ฐใชใ‚‹ๆœ€็ต‚ๅ€คใซใชใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใงใฏใ€ใ™ในใฆใŒ้ †็•ชใซ็ถšใใŸใ‚ใ€ใ“ใ‚ŒใŒ็™บ็”Ÿใ™ใ‚‹ๅฏ่ƒฝๆ€งใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใงใฏใ€ไธฆๅˆ—ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ใƒ—ใƒญใ‚ปใ‚นใŒใชใ„ใŸใ‚ใ€Xใฏๅธธใซๆœ€ๅˆใซใƒกใ‚ฝใƒƒใƒ‰๏ผƒ1ใซใ‚ˆใฃใฆ่จญๅฎšใ•ใ‚Œ๏ผˆๆœ€ๅˆใซๅ‘ผใณๅ‡บใ•ใ‚ŒใŸๅ ดๅˆ๏ผ‰ใ€ๆฌกใซใƒกใ‚ฝใƒƒใƒ‰๏ผƒ2ใซใ‚ˆใฃใฆ่จญๅฎšใ•ใ‚Œใพใ™ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใซใฏ้ฉšใใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใใ‚Œใฏใ‚นใƒ†ใƒƒใƒ—ใƒใ‚คใ‚นใƒ†ใƒƒใƒ—ใงใ™ใ€‚ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใ‚’ไฝฟ็”จใ™ใ‚‹ใจใ€2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒๆ™‚ใซใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใ€็ตๆžœใซๅคงๆททไนฑใ‚’ใ‚‚ใŸใ‚‰ใ™ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใฎๅ•้กŒใฏใ€ๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒใ˜ใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใฆๅ…ฑๆœ‰ใƒ‡ใƒผใ‚ฟใ‚’ๆ“ไฝœใงใใ‚‹ใ‚ˆใ†ใซใ—ใชใŒใ‚‰ใ€ๅ…ฑๆœ‰ใƒกใƒขใƒชใซใ‚ขใ‚ฏใ‚ปใ‚นใ™ใ‚‹1ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ๅˆถๅพกใ™ใ‚‹ไฝ•ใ‚‰ใ‹ใฎๆ–นๆณ•ใŒๅฟ…่ฆใชใ“ใจใงใ™ใ€‚Xใฏใ€ใฉใฎใ‚นใƒฌใƒƒใƒ‰ใŒๆœ€ๅˆใซXใซๅˆฐ้”ใ—ใŸใ‹ใซใ‚ˆใฃใฆใ€ๆœ€็ต‚็š„ใซ็•ฐใชใ‚‹ๆœ€็ต‚ๅ€คใซใชใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใงใฏใ€ใ™ในใฆใŒ้ †็•ชใซ็ถšใใŸใ‚ใ€ใ“ใ‚ŒใŒ็™บ็”Ÿใ™ใ‚‹ๅฏ่ƒฝๆ€งใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใงใฏใ€ไธฆๅˆ—ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ใƒ—ใƒญใ‚ปใ‚นใŒใชใ„ใŸใ‚ใ€Xใฏๅธธใซๆœ€ๅˆใซใƒกใ‚ฝใƒƒใƒ‰๏ผƒ1ใซใ‚ˆใฃใฆ่จญๅฎšใ•ใ‚Œ๏ผˆๆœ€ๅˆใซๅ‘ผใณๅ‡บใ•ใ‚ŒใŸๅ ดๅˆ๏ผ‰ใ€ๆฌกใซใƒกใ‚ฝใƒƒใƒ‰๏ผƒ2ใซใ‚ˆใฃใฆ่จญๅฎšใ•ใ‚Œใพใ™ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใซใฏ้ฉšใใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใใ‚Œใฏใ‚นใƒ†ใƒƒใƒ—ใƒใ‚คใ‚นใƒ†ใƒƒใƒ—ใงใ™ใ€‚ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใ‚’ไฝฟ็”จใ™ใ‚‹ใจใ€2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒๆ™‚ใซใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใ€็ตๆžœใซๅคงๆททไนฑใ‚’ใ‚‚ใŸใ‚‰ใ™ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใฎๅ•้กŒใฏใ€ๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒใ˜ใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใฆๅ…ฑๆœ‰ใƒ‡ใƒผใ‚ฟใ‚’ๆ“ไฝœใงใใ‚‹ใ‚ˆใ†ใซใ—ใชใŒใ‚‰ใ€ๅ…ฑๆœ‰ใƒกใƒขใƒชใซใ‚ขใ‚ฏใ‚ปใ‚นใ™ใ‚‹1ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ๅˆถๅพกใ™ใ‚‹ไฝ•ใ‚‰ใ‹ใฎๆ–นๆณ•ใŒๅฟ…่ฆใชใ“ใจใงใ™ใ€‚ใ™ในใฆใŒ้ †็•ชใซ็ถšใใŸใ‚ใ€ใ“ใ‚ŒใŒ็™บ็”Ÿใ™ใ‚‹ๅฏ่ƒฝๆ€งใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใงใฏใ€ไธฆๅˆ—ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ใƒ—ใƒญใ‚ปใ‚นใŒใชใ„ใŸใ‚ใ€Xใฏๅธธใซๆœ€ๅˆใซใƒกใ‚ฝใƒƒใƒ‰๏ผƒ1ใซใ‚ˆใฃใฆ่จญๅฎšใ•ใ‚Œ๏ผˆๆœ€ๅˆใซๅ‘ผใณๅ‡บใ•ใ‚ŒใŸๅ ดๅˆ๏ผ‰ใ€ๆฌกใซใƒกใ‚ฝใƒƒใƒ‰๏ผƒ2ใซใ‚ˆใฃใฆ่จญๅฎšใ•ใ‚Œใพใ™ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใซใฏ้ฉšใใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใใ‚Œใฏใ‚นใƒ†ใƒƒใƒ—ใƒใ‚คใ‚นใƒ†ใƒƒใƒ—ใงใ™ใ€‚ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใ‚’ไฝฟ็”จใ™ใ‚‹ใจใ€2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒๆ™‚ใซใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใ€็ตๆžœใซๅคงๆททไนฑใ‚’ใ‚‚ใŸใ‚‰ใ™ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใฎๅ•้กŒใฏใ€ๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒใ˜ใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใฆๅ…ฑๆœ‰ใƒ‡ใƒผใ‚ฟใ‚’ๆ“ไฝœใงใใ‚‹ใ‚ˆใ†ใซใ—ใชใŒใ‚‰ใ€ๅ…ฑๆœ‰ใƒกใƒขใƒชใซใ‚ขใ‚ฏใ‚ปใ‚นใ™ใ‚‹1ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ๅˆถๅพกใ™ใ‚‹ไฝ•ใ‚‰ใ‹ใฎๆ–นๆณ•ใŒๅฟ…่ฆใชใ“ใจใงใ™ใ€‚ใ™ในใฆใŒ้ †็•ชใซ็ถšใใŸใ‚ใ€ใ“ใ‚ŒใŒ็™บ็”Ÿใ™ใ‚‹ๅฏ่ƒฝๆ€งใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใงใฏใ€ไธฆๅˆ—ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ใƒ—ใƒญใ‚ปใ‚นใŒใชใ„ใŸใ‚ใ€Xใฏๅธธใซๆœ€ๅˆใซใƒกใ‚ฝใƒƒใƒ‰๏ผƒ1ใซใ‚ˆใฃใฆ่จญๅฎšใ•ใ‚Œ๏ผˆๆœ€ๅˆใซๅ‘ผใณๅ‡บใ•ใ‚ŒใŸๅ ดๅˆ๏ผ‰ใ€ๆฌกใซใƒกใ‚ฝใƒƒใƒ‰๏ผƒ2ใซใ‚ˆใฃใฆ่จญๅฎšใ•ใ‚Œใพใ™ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใซใฏ้ฉšใใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใใ‚Œใฏใ‚นใƒ†ใƒƒใƒ—ใƒใ‚คใ‚นใƒ†ใƒƒใƒ—ใงใ™ใ€‚ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใ‚’ไฝฟ็”จใ™ใ‚‹ใจใ€2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒๆ™‚ใซใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใ€็ตๆžœใซๅคงๆททไนฑใ‚’ใ‚‚ใŸใ‚‰ใ™ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใฎๅ•้กŒใฏใ€ๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒใ˜ใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใฆๅ…ฑๆœ‰ใƒ‡ใƒผใ‚ฟใ‚’ๆ“ไฝœใงใใ‚‹ใ‚ˆใ†ใซใ—ใชใŒใ‚‰ใ€ๅ…ฑๆœ‰ใƒกใƒขใƒชใซใ‚ขใ‚ฏใ‚ปใ‚นใ™ใ‚‹1ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ๅˆถๅพกใ™ใ‚‹ไฝ•ใ‚‰ใ‹ใฎๆ–นๆณ•ใŒๅฟ…่ฆใชใ“ใจใงใ™ใ€‚๏ผˆๆœ€ๅˆใซๅ‘ผใณๅ‡บใ•ใ‚ŒใŸๅ ดๅˆ๏ผ‰ๆฌกใซใ€ใƒกใ‚ฝใƒƒใƒ‰๏ผƒ2ใง่จญๅฎšใ—ใพใ™ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใซใฏ้ฉšใใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใใ‚Œใฏใ‚นใƒ†ใƒƒใƒ—ใƒใ‚คใ‚นใƒ†ใƒƒใƒ—ใงใ™ใ€‚ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใ‚’ไฝฟ็”จใ™ใ‚‹ใจใ€2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒๆ™‚ใซใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใ€็ตๆžœใซๅคงๆททไนฑใ‚’ใ‚‚ใŸใ‚‰ใ™ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใฎๅ•้กŒใฏใ€ๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒใ˜ใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใฆๅ…ฑๆœ‰ใƒ‡ใƒผใ‚ฟใ‚’ๆ“ไฝœใงใใ‚‹ใ‚ˆใ†ใซใ—ใชใŒใ‚‰ใ€ๅ…ฑๆœ‰ใƒกใƒขใƒชใซใ‚ขใ‚ฏใ‚ปใ‚นใ™ใ‚‹1ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ๅˆถๅพกใ™ใ‚‹ไฝ•ใ‚‰ใ‹ใฎๆ–นๆณ•ใŒๅฟ…่ฆใชใ“ใจใงใ™ใ€‚๏ผˆๆœ€ๅˆใซๅ‘ผใณๅ‡บใ•ใ‚ŒใŸๅ ดๅˆ๏ผ‰ๆฌกใซใ€ใƒกใ‚ฝใƒƒใƒ‰๏ผƒ2ใง่จญๅฎšใ—ใพใ™ใ€‚ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใซใฏ้ฉšใใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใใ‚Œใฏใ‚นใƒ†ใƒƒใƒ—ใƒใ‚คใ‚นใƒ†ใƒƒใƒ—ใงใ™ใ€‚ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใ‚’ไฝฟ็”จใ™ใ‚‹ใจใ€2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒๆ™‚ใซใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใ€็ตๆžœใซๅคงๆททไนฑใ‚’ใ‚‚ใŸใ‚‰ใ™ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใฎๅ•้กŒใฏใ€ๅŒๆ™‚ใซๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅŒใ˜ใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใ—ใฆๅ…ฑๆœ‰ใƒ‡ใƒผใ‚ฟใ‚’ๆ“ไฝœใงใใ‚‹ใ‚ˆใ†ใซใ—ใชใŒใ‚‰ใ€ๅ…ฑๆœ‰ใƒกใƒขใƒชใซใ‚ขใ‚ฏใ‚ปใ‚นใ™ใ‚‹1ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ๅˆถๅพกใ™ใ‚‹ไฝ•ใ‚‰ใ‹ใฎๆ–นๆณ•ใŒๅฟ…่ฆใชใ“ใจใงใ™ใ€‚ 

ใ‚นใƒฌใƒƒใƒ‰ใ‚ปใƒผใƒ•

3ใคใฎใƒœใƒผใƒซใ‚’ใ‚ธใƒฃใ‚ฐใƒชใƒณใ‚ฐใ™ใ‚‹ใŸใณใซใ€็ฉบไธญใฎใƒœใƒผใƒซใŒใ€่‡ช็„ถใฎ็•ฐๅธธใซใ‚ˆใฃใฆใ€ใ™ใงใซๅณๆ‰‹ใซๅบงใฃใฆใ„ใ‚‹ใƒœใƒผใƒซใŒๆŠ•ใ’ใ‚‰ใ‚Œใ‚‹ใพใงใ€ๅณๆ‰‹ใซๅˆฐ้”ใ™ใ‚‹ใ“ใจใŒๆฑบใ—ใฆ่จฑใ•ใ‚Œใชใ‹ใฃใŸใจๆƒณๅƒใ—ใฆใฟใฆใใ ใ•ใ„ใ€‚ๅฐ‘ๅนดใ€ใ‚ธใƒฃใ‚ฐใƒชใƒณใ‚ฐใฏใšใฃใจ็ฐกๅ˜ใงใ—ใ‚‡ใ†๏ผใ“ใ‚ŒใŒใ‚นใƒฌใƒƒใƒ‰ใ‚ปใƒผใƒ•ใฎใ™ในใฆใงใ™ใ€‚็งใŸใกใฎใƒ—ใƒญใ‚ฐใƒฉใƒ ใงใฏใ€ใ‚‚ใ†ไธ€ๆ–นใฎใ‚นใƒฌใƒƒใƒ‰ใŒใƒ“ใ‚ธใƒใ‚นใ‚’็ต‚ไบ†ใ—ใฆใ„ใ‚‹้–“ใ€ไธ€ๆ–นใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ใ‚ณใƒผใƒ‰ใƒ–ใƒญใƒƒใ‚ฏๅ†…ใงๅพ…ๆฉŸใ•ใ›ใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใฎใƒ–ใƒญใƒƒใ‚ฏใพใŸใฏใ‚นใƒฌใƒƒใƒ‰ใฎๅŒๆœŸใจๅ‘ผใฐใ‚Œใ‚‹ใ“ใฎใ‚ขใ‚ฏใƒ†ใ‚ฃใƒ“ใƒ†ใ‚ฃใซใ‚ˆใ‚Šใ€ใƒ—ใƒญใ‚ฐใƒฉใƒ ๅ†…ใงๅฎŸ่กŒใ•ใ‚Œใ‚‹ๅŒๆ™‚ใ‚นใƒฌใƒƒใƒ‰ใฎใ‚ฟใ‚คใƒŸใƒณใ‚ฐใ‚’ๅˆถๅพกใงใใพใ™ใ€‚C๏ผƒใงใฏใ€ใƒกใƒขใƒชใฎ็‰นๅฎšใฎ้ƒจๅˆ†๏ผˆ้€šๅธธใฏใ‚ชใƒ–ใ‚ธใ‚งใ‚ฏใƒˆใฎใ‚คใƒณใ‚นใ‚ฟใƒณใ‚น๏ผ‰ใ‚’ใƒญใƒƒใ‚ฏใ—ใ€ใ‚ชใƒ–ใ‚ธใ‚งใ‚ฏใƒˆใ‚’ไฝฟ็”จใ—ใฆๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅฎŒไบ†ใ™ใ‚‹ใพใงใ€ใ‚นใƒฌใƒƒใƒ‰ใŒใ“ใฎใ‚ชใƒ–ใ‚ธใ‚งใ‚ฏใƒˆใฎใƒกใƒขใƒชใฎใ‚ณใƒผใƒ‰ใ‚’ๅ…ฅๅŠ›ใงใใชใ„ใ‚ˆใ†ใซใ—ใพใ™ใ€‚ไปŠใงใฏใŠใใ‚‰ใใ‚ณใƒผใƒ‰ไพ‹ใ‚’ๆธ‡ๆœ›ใ—ใฆใ„ใ‚‹ใฎใงใ€ใ“ใ“ใซ่กŒใใพใ™ใ€‚

2ใ‚นใƒฌใƒƒใƒ‰ใฎใ‚ทใƒŠใƒชใ‚ชใ‚’่ฆ‹ใฆใฟใพใ—ใ‚‡ใ†ใ€‚ใ“ใฎไพ‹ใงใฏใ€C๏ผƒใงใ‚นใƒฌใƒƒใƒ‰1ใจใ‚นใƒฌใƒƒใƒ‰2ใฎ2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ไฝœๆˆใ—ใพใ™ใ€‚ใฉใกใ‚‰ใ‚‚ใ€็‹ฌ่‡ชใฎwhileใƒซใƒผใƒ—ใงๅฎŸ่กŒใ•ใ‚Œใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใฏไฝ•ใฎๅฝนใซใ‚‚็ซ‹ใกใพใ›ใ‚“ใ€‚ใฉใฎใ‚นใƒฌใƒƒใƒ‰ใซๅฑžใ—ใฆใ„ใ‚‹ใ‹ใ‚’็คบใ™ใƒกใƒƒใ‚ปใƒผใ‚ธใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ ใ‘ใงใ™ใ€‚_threadOutputใจๅ‘ผใฐใ‚Œใ‚‹ๅ…ฑๆœ‰ใƒกใƒขใƒชใ‚ฏใƒฉใ‚นใƒกใƒณใƒใƒผใ‚’ๅˆฉ็”จใ—ใพใ™ใ€‚_threadOutputใซใฏใ€ๅฎŸ่กŒไธญใฎใ‚นใƒฌใƒƒใƒ‰ใซๅŸบใฅใ„ใฆใƒกใƒƒใ‚ปใƒผใ‚ธใŒๅ‰ฒใ‚Šๅฝ“ใฆใ‚‰ใ‚Œใพใ™ใ€‚ใƒชใ‚นใƒˆ๏ผƒ1ใฏใ€ใใ‚Œใžใ‚ŒDisplayThread1ใจDisplayThread2ใซๅซใพใ‚Œใ‚‹2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’็คบใ—ใฆใ„ใพใ™ใ€‚

ใƒชใ‚นใƒˆ1-ใƒกใƒขใƒชๅ†…ใงๅ…ฑ้€šใฎๅค‰ๆ•ฐใ‚’ๅ…ฑๆœ‰ใ™ใ‚‹2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ไฝœๆˆใ™ใ‚‹

// shared memory variable between the two threads  
// used to indicate which thread we are in  
private string _threadOutput = "";  
  
/// <summary>  
/// Thread 1: Loop continuously,  
/// Thread 1: Displays that we are in thread 1  
/// </summary>  
void DisplayThread1()  
{  
      while (_stopThreads == false)  
      {  
            Console.WriteLine("Display Thread 1");  
  
            // Assign the shared memory to a message about thread #1  
            _threadOutput = "Hello Thread1";  
  
  
            Thread.Sleep(1000);  // simulate a lot of processing   
  
            // tell the user what thread we are in thread #1, and display shared memory  
            Console.WriteLine("Thread 1 Output --> {0}", _threadOutput);  
  
      }  
}  

/// <summary>  
/// Thread 2: Loop continuously,  
/// Thread 2: Displays that we are in thread 2  
/// </summary>  
void DisplayThread2()  
{  
      while (_stopThreads == false)  
      {  
        Console.WriteLine("Display Thread 2");  
  
  
       // Assign the shared memory to a message about thread #2  
        _threadOutput = "Hello Thread2";  
  
  
        Thread.Sleep(1000);  // simulate a lot of processing  
  
       // tell the user we are in thread #2  
        Console.WriteLine("Thread 2 Output --> {0}", _threadOutput);  
  
      }  
}
Class1()  
{  
      // construct two threads for our demonstration;  
      Thread thread1 = new Thread(new ThreadStart(DisplayThread1));  
      Thread thread2 = new Thread(new ThreadStart(DisplayThread2));  
  
      // start them  
      thread1.Start();  
      thread2.Start();  
}

ใ“ใฎใ‚ณใƒผใƒ‰ใฎ็ตๆžœใ‚’ๅ›ณ2ใซ็คบใ—ใพใ™ใ€‚็ตๆžœใ‚’ๆณจๆ„ๆทฑใ่ฆ‹ใฆใใ ใ•ใ„ใ€‚ใƒ—ใƒญใ‚ฐใƒฉใƒ ใŒ้ฉšใในใๅ‡บๅŠ›ใ‚’ๆไพ›ใ™ใ‚‹ใ“ใจใซๆฐ—ไป˜ใใงใ—ใ‚‡ใ†๏ผˆใ“ใ‚Œใ‚’ใ‚ทใƒณใ‚ฐใƒซใ‚นใƒฌใƒƒใƒ‰ใฎ่€ƒใˆๆ–นใ‹ใ‚‰่ฆ‹ใŸๅ ดๅˆ๏ผ‰ใ€‚_threadOutputใ‚’ใ€ใใ‚ŒใŒๅฑžใ™ใ‚‹ใ‚นใƒฌใƒƒใƒ‰ใซๅฏพๅฟœใ™ใ‚‹็•ชๅทใฎๆ–‡ๅญ—ๅˆ—ใซๆ˜Ž็ขบใซๅ‰ฒใ‚Šๅฝ“ใฆใพใ—ใŸใŒใ€ใ‚ณใƒณใ‚ฝใƒผใƒซใงใฏๆฌกใฎใ‚ˆใ†ใซ่กจ็คบใ•ใ‚Œใพใ™ใ€‚

C๏ผƒใงใฎใ‚นใƒฌใƒƒใƒ‰ๅŒ–

ๅ›ณ2-2ใ‚นใƒฌใƒƒใƒ‰ใฎไพ‹ใ‹ใ‚‰ใฎ็•ฐๅธธใชๅ‡บๅŠ›ใ€‚

็งใŸใกใฎใ‚ณใƒผใƒ‰ใ‹ใ‚‰ๆฌกใฎใ“ใจใŒๆœŸๅพ…ใ•ใ‚Œใพใ™ใ€

ใ‚นใƒฌใƒƒใƒ‰1ใฎๅ‡บๅŠ›->ใƒใƒญใƒผใ‚นใƒฌใƒƒใƒ‰1ใจใ‚นใƒฌใƒƒใƒ‰2ใฎๅ‡บๅŠ›->ใƒใƒญใƒผใ‚นใƒฌใƒƒใƒ‰2ใงใ™ใŒใ€ใปใจใ‚“ใฉใฎๅ ดๅˆใ€็ตๆžœใฏๅฎŒๅ…จใซไบˆๆธฌใงใใพใ›ใ‚“ใ€‚ 

ใ‚นใƒฌใƒƒใƒ‰2ใฎๅ‡บๅŠ›->ใƒใƒญใƒผใ‚นใƒฌใƒƒใƒ‰1ใจใ‚นใƒฌใƒƒใƒ‰1ใฎๅ‡บๅŠ›->ใƒใƒญใƒผใ‚นใƒฌใƒƒใƒ‰2ใŒ่กจ็คบใ•ใ‚Œใ‚‹ใ“ใจใŒใ‚ใ‚Šใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใฎๅ‡บๅŠ›ใŒใ‚ณใƒผใƒ‰ใจไธ€่‡ดใ—ใพใ›ใ‚“ใ€‚ใ‚ณใƒผใƒ‰ใ‚’่ฆ‹ใฆใ€ใใ‚Œใ‚’็›ฎใง่ฟฝใฃใฆใ„ใพใ™ใŒใ€_threadOutput = "Hello Thread 2"ใ€Sleepใ€Write "Thread 2-> Hello Thread 2"ใงใ™ใŒใ€ใ“ใฎใ‚ทใƒผใ‚ฑใƒณใ‚นใงๅฟ…ใšใ—ใ‚‚ๆœ€็ต‚็ตๆžœใŒๅพ—ใ‚‰ใ‚Œใ‚‹ใจใฏ้™ใ‚Šใพใ›ใ‚“ใ€‚ 

่ชฌๆ˜Ž

ใ“ใฎใ‚ˆใ†ใชใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใงใฏใ€็†่ซ–็š„ใซใฏใ‚ณใƒผใƒ‰ใŒ2ใคใฎใƒกใ‚ฝใƒƒใƒ‰DisplayThread1ใจDisplayThread2ใ‚’ๅŒๆ™‚ใซๅฎŸ่กŒใ—ใฆใ„ใ‚‹ใŸใ‚ใงใ™ใ€‚ๅ„ใƒกใ‚ฝใƒƒใƒ‰ใฏๅค‰ๆ•ฐ_threadOutputใ‚’ๅ…ฑๆœ‰ใ—ใพใ™ใ€‚ใ—ใŸใŒใฃใฆใ€_threadOutputใซใฏใ‚นใƒฌใƒƒใƒ‰๏ผƒ1ใงๅ€ค "Hello Thread1"ใŒๅ‰ฒใ‚Šๅฝ“ใฆใ‚‰ใ‚Œใ€2่กŒๅพŒใซใ‚ณใƒณใ‚ฝใƒผใƒซใซ_threadOutputใŒ่กจ็คบใ•ใ‚Œใพใ™ใŒใ€ใ‚นใƒฌใƒƒใƒ‰๏ผƒ1ใŒใใ‚Œใ‚’ๅ‰ฒใ‚Šๅฝ“ใฆใฆ่กจ็คบใ™ใ‚‹ๆ™‚้–“ใฎ้–“ใฎใฉใ“ใ‹ใงใ€ใ‚นใƒฌใƒƒใƒ‰๏ผƒ2ใŒ_threadOutputใ‚’ๅ‰ฒใ‚Šๅฝ“ใฆใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ๅ€คใ€ŒHelloThread2ใ€ใ€‚ใ“ใ‚Œใ‚‰ใฎๅฅ‡ๅฆ™ใช็ตๆžœใŒ็™บ็”Ÿใ™ใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚‹ใ ใ‘ใงใชใใ€ๅ›ณ2ใซ็คบใ™ๅ‡บๅŠ›ใซ่ฆ‹ใ‚‰ใ‚Œใ‚‹ใ‚ˆใ†ใซใ€้žๅธธใซ้ ป็นใซ็™บ็”Ÿใ—ใพใ™ใ€‚ใ“ใฎ็—›ใฟใ‚’ไผดใ†ใ‚นใƒฌใƒƒใƒ‰ใฎๅ•้กŒใฏใ€็ซถๅˆ็Šถๆ…‹ใจใ—ใฆ็Ÿฅใ‚‰ใ‚Œใ‚‹ใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐใง้žๅธธใซไธ€่ˆฌ็š„ใชใƒใ‚ฐใงใ™ใ€‚ ใ“ใฎไพ‹ใฏใ€ใ‚ˆใ็Ÿฅใ‚‰ใ‚Œใฆใ„ใ‚‹ใ‚นใƒฌใƒƒใƒ‰ใฎๅ•้กŒใฎ้žๅธธใซๅ˜็ด”ใชไพ‹ใงใ™ใ€‚ใ“ใฎๅ•้กŒใฏใ€ๅ‚็…งใ•ใ‚Œใฆใ„ใ‚‹ๅค‰ๆ•ฐใ‚„ใ‚นใƒฌใƒƒใƒ‰ใ‚ปใƒผใƒ•ใงใชใ„ๅค‰ๆ•ฐใ‚’ๆŒ‡ใ™ใ‚ณใƒฌใ‚ฏใ‚ทใƒงใƒณใชใฉใ‚’ไป‹ใ—ใฆใ€ใƒ—ใƒญใ‚ฐใƒฉใƒžใƒผใ‹ใ‚‰ใฏใ‚‹ใ‹ใซ้–“ๆŽฅ็š„ใซ้š ใ•ใ‚Œใฆใ„ใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ๅ›ณ2ใงใฏ็—‡็Šถใฏ้œฒ้ชจใงใ™ใŒใ€็ซถๅˆ็Šถๆ…‹ใฏ้žๅธธใซใพใ‚Œใซใ—ใ‹็พใ‚Œใšใ€1ๅˆ†ใซ1ๅ›žใ€1ๆ™‚้–“ใซ1ๅ›žใ€ใพใŸใฏ3ๆ—ฅๅพŒใซๆ–ญ็ถš็š„ใซ็พใ‚Œใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ใƒฌใƒผใ‚นใฏใ€ใใฎ้ ปๅบฆใŒไฝŽใใ€ๅ†็พใŒ้žๅธธใซ้›ฃใ—ใ„ใŸใ‚ใ€ใŠใใ‚‰ใใƒ—ใƒญใ‚ฐใƒฉใƒžใƒผใซใจใฃใฆๆœ€ๆ‚ชใฎๆ‚ชๅคขใงใ™ใ€‚

ใƒฌใƒผใ‚นใซๅ‹ใค

็ซถๅˆ็Šถๆ…‹ใ‚’ๅ›ž้ฟใ™ใ‚‹ๆœ€ๅ–„ใฎๆ–นๆณ•ใฏใ€ใ‚นใƒฌใƒƒใƒ‰ใ‚ปใƒผใƒ•ใชใ‚ณใƒผใƒ‰ใ‚’ไฝœๆˆใ™ใ‚‹ใ“ใจใงใ™ใ€‚ใ‚ณใƒผใƒ‰ใŒใ‚นใƒฌใƒƒใƒ‰ใ‚ปใƒผใƒ•ใงใ‚ใ‚‹ๅ ดๅˆใ€ใ„ใใคใ‹ใฎๅŽ„ไป‹ใชใ‚นใƒฌใƒƒใƒ‰ใฎๅ•้กŒใŒ็™บ็”Ÿใ™ใ‚‹ใฎใ‚’้˜ฒใใ“ใจใŒใงใใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใ‚ปใƒผใƒ•ใชใ‚ณใƒผใƒ‰ใ‚’ๆ›ธใใŸใ‚ใฎใ„ใใคใ‹ใฎ้˜ฒๅพก็ญ–ใŒใ‚ใ‚Šใพใ™ใ€‚1ใคใฏใ€ใƒกใƒขใƒชใฎๅ…ฑๆœ‰ใ‚’ใงใใ‚‹ใ ใ‘ๅฐ‘ใชใใ™ใ‚‹ใ“ใจใงใ™ใ€‚ใ‚ฏใƒฉใ‚นใฎใ‚คใƒณใ‚นใ‚ฟใƒณใ‚นใ‚’ไฝœๆˆใ—ใ€ใใ‚ŒใŒ1ใคใฎใ‚นใƒฌใƒƒใƒ‰ใงๅฎŸ่กŒใ•ใ‚Œใ€ๆฌกใซๅŒใ˜ใ‚ฏใƒฉใ‚นใฎๅˆฅใฎใ‚คใƒณใ‚นใ‚ฟใƒณใ‚นใ‚’ไฝœๆˆใ—ใ€ใใ‚ŒใŒๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใงๅฎŸ่กŒใ•ใ‚Œใ‚‹ๅ ดๅˆใ€้™็š„ๅค‰ๆ•ฐใŒๅซใพใ‚Œใฆใ„ใชใ„้™ใ‚Šใ€ใ‚ฏใƒฉใ‚นใฏใ‚นใƒฌใƒƒใƒ‰ใ‚ปใƒผใƒ•ใงใ™ใ€‚ ใ€‚2ใคใฎใ‚ฏใƒฉใ‚นใฏใใ‚Œใžใ‚Œใ€็‹ฌ่‡ชใฎใƒ•ใ‚ฃใƒผใƒซใƒ‰็”จใซ็‹ฌ่‡ชใฎใƒกใƒขใƒชใ‚’ไฝœๆˆใ™ใ‚‹ใŸใ‚ใ€ๅ…ฑๆœ‰ใƒกใƒขใƒชใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใ‚ฏใƒฉใ‚นใซ้™็š„ๅค‰ๆ•ฐใŒใ‚ใ‚‹ๅ ดๅˆใ€ใพใŸใฏใ‚ฏใƒฉใ‚นใฎใ‚คใƒณใ‚นใ‚ฟใƒณใ‚นใŒไป–ใฎ่ค‡ๆ•ฐใฎใ‚นใƒฌใƒƒใƒ‰ใซใ‚ˆใฃใฆๅ…ฑๆœ‰ใ•ใ‚Œใฆใ„ใ‚‹ๅ ดๅˆใฏใ€ไป–ใฎใ‚ฏใƒฉใ‚นใŒใใฎๅค‰ๆ•ฐใฎไฝฟ็”จใ‚’ๅฎŒไบ†ใ™ใ‚‹ใพใงใ€ไธ€ๆ–นใฎใ‚นใƒฌใƒƒใƒ‰ใŒใใฎๅค‰ๆ•ฐใฎใƒกใƒขใƒชใ‚’ไฝฟ็”จใงใใชใ„ใ‚ˆใ†ใซใ™ใ‚‹ๆ–นๆณ•ใ‚’่ฆ‹ใคใ‘ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚Šใพใ™ใ€‚ใƒญใƒƒใ‚ฏใ€‚  C๏ผƒใ‚’ไฝฟ็”จใ™ใ‚‹ใจใ€Monitorใ‚ฏใƒฉใ‚นใพใŸใฏlock {}ๆง‹้€ ใฎใ„ใšใ‚Œใ‹ใ‚’ไฝฟ็”จใ—ใฆใ‚ณใƒผใƒ‰ใ‚’ใƒญใƒƒใ‚ฏใงใใพใ™ใ€‚๏ผˆlockๆง‹้€ ใฏใ€ๅฎŸ้š›ใซใฏtry-finallyใƒ–ใƒญใƒƒใ‚ฏใ‚’ไป‹ใ—ใฆMonitorใ‚ฏใƒฉใ‚นใ‚’ๅ†…้ƒจ็š„ใซๅฎŸ่ฃ…ใ—ใพใ™ใŒใ€ใƒ—ใƒญใ‚ฐใƒฉใƒžใƒผใ‹ใ‚‰ใ“ใ‚Œใ‚‰ใฎ่ฉณ็ดฐใ‚’้š ใ—ใพใ™๏ผ‰ใ€‚ใƒชใ‚นใƒˆ1ใฎไพ‹ใงใฏใ€ๅ…ฑๆœ‰_threadOutputๅค‰ๆ•ฐใ‚’่จญๅฎšใ—ใŸๆ™‚็‚นใ‹ใ‚‰ใ€ใ‚ณใƒณใ‚ฝใƒผใƒซใธใฎๅฎŸ้š›ใฎๅ‡บๅŠ›ใพใงใ€ใ‚ณใƒผใƒ‰ใฎใ‚ปใ‚ฏใ‚ทใƒงใƒณใ‚’ใƒญใƒƒใ‚ฏใงใใพใ™ใ€‚ใ‚ณใƒผใƒ‰ใฎใ‚ฏใƒชใƒ†ใ‚ฃใ‚ซใƒซใ‚ปใ‚ฏใ‚ทใƒงใƒณใ‚’ไธกๆ–นใฎใ‚นใƒฌใƒƒใƒ‰ใงใƒญใƒƒใ‚ฏใ—ใฆใ€ใฉใกใ‚‰ใ‹ไธ€ๆ–นใซ็ซถๅˆใŒ็™บ็”Ÿใ—ใชใ„ใ‚ˆใ†ใซใ—ใพใ™ใ€‚ใƒกใ‚ฝใƒƒใƒ‰ๅ†…ใ‚’ใƒญใƒƒใ‚ฏใ™ใ‚‹ๆœ€ใ‚‚้€Ÿใใฆๆฑšใ„ๆ–นๆณ•ใฏใ€ใ“ใฎใƒใ‚คใƒณใ‚ฟใƒผใ‚’ใƒญใƒƒใ‚ฏใ™ใ‚‹ใ“ใจใงใ™ใ€‚ใ“ใฎใƒใ‚คใƒณใ‚ฟใ‚’ใƒญใƒƒใ‚ฏใ™ใ‚‹ใจใ€ใ‚ฏใƒฉใ‚นใ‚คใƒณใ‚นใ‚ฟใƒณใ‚นๅ…จไฝ“ใŒใƒญใƒƒใ‚ฏใ•ใ‚Œใ‚‹ใŸใ‚ใ€ใƒญใƒƒใ‚ฏๅ†…ใงใ‚ฏใƒฉใ‚นใฎใƒ•ใ‚ฃใƒผใƒซใƒ‰ใ‚’ๅค‰ๆ›ดใ—ใ‚ˆใ†ใจใ™ใ‚‹ใ‚นใƒฌใƒƒใƒ‰ใฏใ™ในใฆใƒ–ใƒญใƒƒใ‚ฏใ•ใ‚Œใพใ™ใ€‚ใ€‚ใƒ–ใƒญใƒƒใ‚ญใƒณใ‚ฐใจใฏใ€ๅค‰ๆ•ฐใ‚’ๅค‰ๆ›ดใ—ใ‚ˆใ†ใจใ—ใฆใ„ใ‚‹ใ‚นใƒฌใƒƒใƒ‰ใŒใ€ใƒญใƒƒใ‚ฏใ•ใ‚ŒใŸใ‚นใƒฌใƒƒใƒ‰ใงใƒญใƒƒใ‚ฏใŒ่งฃ้™คใ•ใ‚Œใ‚‹ใพใงๅพ…ๆฉŸใ™ใ‚‹ใ“ใจใ‚’ๆ„ๅ‘ณใ—ใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใฏใ€lock {}ๆง‹้€ ใฎๆœ€ๅพŒใฎใƒ–ใƒฉใ‚ฑใƒƒใƒˆใซๅˆฐ้”ใ™ใ‚‹ใจใ€ใƒญใƒƒใ‚ฏใ‹ใ‚‰่งฃๆ”พใ•ใ‚Œใพใ™ใ€‚

ใƒชใ‚นใƒˆ2-2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ใƒญใƒƒใ‚ฏใ—ใฆๅŒๆœŸใ™ใ‚‹

/// <summary>  
/// Thread 1, Displays that we are in thread 1 (locked)  
 /// </summary>  
 void DisplayThread1()  
 {  
       while (_stopThreads == false)  
       {  
          // lock on the current instance of the class for thread #1  
             lock (this)  
             {  
                   Console.WriteLine("Display Thread 1");  
                   _threadOutput = "Hello Thread1";  
                   Thread.Sleep(1000);  // simulate a lot of processing  
                   // tell the user what thread we are in thread #1  
                   Console.WriteLine("Thread 1 Output --> {0}", _threadOutput);  
             }// lock released  for thread #1 here  
       }   
 }  

/// <summary>  
/// Thread 1, Displays that we are in thread 1 (locked)  
 /// </summary>  
 void DisplayThread2()  
 {  
       while (_stopThreads == false)  
       {  
  
           // lock on the current instance of the class for thread #2  
             lock (this)  
             {  
                   Console.WriteLine("Display Thread 2");  
                   _threadOutput = "Hello Thread2";  
                   Thread.Sleep(1000);  // simulate a lot of processing  
                   // tell the user what thread we are in thread #1  
                   Console.WriteLine("Thread 2 Output --> {0}", _threadOutput);  
             } // lock released  for thread #2 here  
       }   
 }

2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ใƒญใƒƒใ‚ฏใ—ใŸ็ตๆžœใ‚’ๅ›ณ3ใซ็คบใ—ใพใ™ใ€‚ใ™ในใฆใฎใ‚นใƒฌใƒƒใƒ‰ๅ‡บๅŠ›ใŒ้ฉๅˆ‡ใซๅŒๆœŸใ•ใ‚Œใฆใ„ใ‚‹ใ“ใจใซๆณจๆ„ใ—ใฆใใ ใ•ใ„ใ€‚ใ‚นใƒฌใƒƒใƒ‰1ใฎๅ‡บๅŠ›->ใƒใƒญใƒผใ‚นใƒฌใƒƒใƒ‰1ใจใ‚นใƒฌใƒƒใƒ‰2ใฎๅ‡บๅŠ›->ใƒใƒญใƒผใ‚นใƒฌใƒƒใƒ‰2ใจใ„ใ†็ตๆžœใŒๅธธใซ่กจ็คบใ•ใ‚Œใพใ™ใ€‚ใŸใ ใ—ใ€ใ‚นใƒฌใƒƒใƒ‰ใฎใƒญใƒƒใ‚ฏใซใฏใ‚ณใ‚นใƒˆใŒใ‹ใ‹ใ‚‹ใ“ใจใซๆณจๆ„ใ—ใฆใใ ใ•ใ„ใ€‚ใ‚นใƒฌใƒƒใƒ‰ใ‚’ใƒญใƒƒใ‚ฏใ™ใ‚‹ใจใ€ใƒญใƒƒใ‚ฏใŒ่งฃ้™คใ•ใ‚Œใ‚‹ใพใงไป–ใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’ๅผทๅˆถ็š„ใซๅพ…ๆฉŸใ•ใ›ใพใ™ใ€‚ๆœฌ่ณช็š„ใซใ€ไป–ใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅ…ฑๆœ‰ใƒกใƒขใƒชใฎไฝฟ็”จใ‚’ๅพ…ๆฉŸใ—ใฆใ„ใ‚‹้–“ใ€ๆœ€ๅˆใฎใ‚นใƒฌใƒƒใƒ‰ใฏใƒ—ใƒญใ‚ฐใƒฉใƒ ใงไฝ•ใ‚‚ใ—ใฆใ„ใชใ„ใŸใ‚ใ€ใƒ—ใƒญใ‚ฐใƒฉใƒ ใฎ้€ŸๅบฆใŒไฝŽไธ‹ใ—ใพใ—ใŸใ€‚ใ—ใŸใŒใฃใฆใ€ใƒญใƒƒใ‚ฏใฏๆ…Ž้‡ใซไฝฟ็”จใ™ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚Šใพใ™ใ€‚ๅ…ฑๆœ‰ใƒกใƒขใƒชใซ้–ขไธŽใ—ใฆใ„ใชใ„ๅ ดๅˆใฏใ€ใ‚ณใƒผใƒ‰ๅ†…ใซใ‚ใ‚‹ใ™ในใฆใฎใƒกใ‚ฝใƒƒใƒ‰ใ‚’ใƒญใƒƒใ‚ฏใ™ใ‚‹ใ ใ‘ใงใฏใ„ใ‘ใพใ›ใ‚“ใ€‚ใพใŸใ€ใƒญใƒƒใ‚ฏใ‚’ไฝฟ็”จใ™ใ‚‹ใจใใฏๆณจๆ„ใ—ใฆใใ ใ•ใ„ใ€‚ใ‚นใƒฌใƒƒใƒ‰๏ผƒ1ใŒใ‚นใƒฌใƒƒใƒ‰๏ผƒ2ใซใ‚ˆใฃใฆใƒญใƒƒใ‚ฏใŒ่งฃๆ”พใ•ใ‚Œใ‚‹ใฎใ‚’ๅพ…ใฃใฆใ„ใ‚‹็Šถๆณใซ้™ฅใ‚ŠใŸใใชใ„ใ‹ใ‚‰ใงใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰๏ผƒ2ใฏใ€ใ‚นใƒฌใƒƒใƒ‰๏ผƒ1ใซใ‚ˆใฃใฆใƒญใƒƒใ‚ฏใŒ่งฃๆ”พใ•ใ‚Œใ‚‹ใฎใ‚’ๅพ…ใฃใฆใ„ใพใ™ใ€‚ใ“ใฎ็ŠถๆณใŒ็™บ็”Ÿใ™ใ‚‹ใจใ€ไธกๆ–นใฎใ‚นใƒฌใƒƒใƒ‰ใŒใƒ–ใƒญใƒƒใ‚ฏใ•ใ‚Œใ€ใƒ—ใƒญใ‚ฐใƒฉใƒ ใŒใƒ•ใƒชใƒผใ‚บใ—ใŸใ‚ˆใ†ใซ่ฆ‹ใˆใพใ™ใ€‚ใ“ใฎ็Šถๆณใฏใจใ—ใฆ็Ÿฅใ‚‰ใ‚Œใฆใ„ใพใ™ใƒ‡ใƒƒใƒ‰ใƒญใƒƒใ‚ฏใŒ็™บ็”Ÿใ—ใ€ใƒ—ใƒญใ‚ฐใƒฉใƒ ๅ†…ใฎไบˆๆธฌใงใใชใ„ๆ–ญ็ถš็š„ใชๆœŸ้–“ใซใ‚‚็™บ็”Ÿใ™ใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚‹ใŸใ‚ใ€็ซถๅˆ็Šถๆ…‹ใจใปใผๅŒใ˜ใใ‚‰ใ„ๆ‚ชใ„็Šถๆณใงใ™ใ€‚ 

  C๏ผƒใงใฎใ‚นใƒฌใƒƒใƒ‰ๅŒ–

  ๅ›ณ3-ใƒญใƒƒใ‚ฏใ‚’ไฝฟ็”จใ—ใŸใƒ‡ใƒฅใ‚ขใƒซใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒญใ‚ฐใƒฉใƒ ใฎๅŒๆœŸ

ไปฃๆ›ฟใ‚ฝใƒชใƒฅใƒผใ‚ทใƒงใƒณ

.NETใฏใ€ใ‚นใƒฌใƒƒใƒ‰ใฎๅˆถๅพกใซๅฝน็ซ‹ใคๅคšใใฎใƒกใ‚ซใƒ‹ใ‚บใƒ ใ‚’ๆไพ›ใ—ใพใ™ใ€‚ๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅ…ฑๆœ‰ใƒกใƒขใƒชใฎไธ€้ƒจใ‚’ๅ‡ฆ็†ใ—ใฆใ„ใ‚‹้–“ใ€ใ‚นใƒฌใƒƒใƒ‰ใ‚’ใƒ–ใƒญใƒƒใ‚ฏใ—ใŸใพใพใซใ™ใ‚‹ๅˆฅใฎๆ–นๆณ•ใฏใ€AutoResetEventใ‚’ไฝฟ็”จใ™ใ‚‹ใ“ใจใงใ™ใ€‚AutoResetEventใ‚ฏใƒฉใ‚นใซใฏใ€SetใจWaitOneใฎ2ใคใฎใƒกใ‚ฝใƒƒใƒ‰ใŒใ‚ใ‚Šใพใ™ใ€‚ใ“ใ‚Œใ‚‰ใฎ2ใคใฎๆ–นๆณ•ใฏใ€ใ‚นใƒฌใƒƒใƒ‰ใฎใƒ–ใƒญใƒƒใ‚ฏใ‚’ๅˆถๅพกใ™ใ‚‹ใŸใ‚ใซไธ€็ท’ใซไฝฟ็”จใงใใพใ™ใ€‚AutoResetEventใŒfalseใงๅˆๆœŸๅŒ–ใ•ใ‚Œใ‚‹ใจใ€ใƒ—ใƒญใ‚ฐใƒฉใƒ ใฏใ€AutoResetEventใงSetใƒกใ‚ฝใƒƒใƒ‰ใŒๅ‘ผใณๅ‡บใ•ใ‚Œใ‚‹ใพใงใ€WaitOneใ‚’ๅ‘ผใณๅ‡บใ™ใ‚ณใƒผใƒ‰่กŒใงๅœๆญขใ—ใพใ™ใ€‚AutoResetEventใงSetใƒกใ‚ฝใƒƒใƒ‰ใŒๅฎŸ่กŒใ•ใ‚Œใ‚‹ใจใ€ใ‚นใƒฌใƒƒใƒ‰ใฎใƒ–ใƒญใƒƒใ‚ฏใŒ่งฃ้™คใ•ใ‚Œใ€WaitOneใ‚’่ถ…ใˆใฆ็ถš่กŒใงใใ‚‹ใ‚ˆใ†ใซใชใ‚Šใพใ™ใ€‚ๆฌกๅ›žWaitOneใŒๅ‘ผใณๅ‡บใ•ใ‚Œใ‚‹ใจใ€่‡ชๅ‹•็š„ใซใƒชใ‚ปใƒƒใƒˆใ•ใ‚Œใ‚‹ใŸใ‚ใ€ใƒ—ใƒญใ‚ฐใƒฉใƒ ใฏใ€WaitOneใƒกใ‚ฝใƒƒใƒ‰ใŒๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ใ‚ณใƒผใƒ‰่กŒใงๅ†ใณๅพ…ๆฉŸ๏ผˆใƒ–ใƒญใƒƒใ‚ฏ๏ผ‰ใ—ใพใ™ใ€‚ใ“ใฎใ€Œๅœๆญขใจใƒˆใƒชใ‚ฌใƒผใ€ใ‚’ไฝฟ็”จใงใใพใ™ Setใ‚’ๅ‘ผใณๅ‡บใ—ใฆใ€ๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใŒใƒ–ใƒญใƒƒใ‚ฏใ•ใ‚ŒใŸใ‚นใƒฌใƒƒใƒ‰ใ‚’่งฃๆ”พใ™ใ‚‹ๆบ–ๅ‚™ใŒใงใใ‚‹ใพใงใ€ใ‚ใ‚‹ใ‚นใƒฌใƒƒใƒ‰ใ‚’ใƒ–ใƒญใƒƒใ‚ฏใ™ใ‚‹ใƒกใ‚ซใƒ‹ใ‚บใƒ ใ€‚ใƒชใ‚นใƒˆ3ใฏใ€AutoResetEventใ‚’ไฝฟ็”จใ—ใฆใ€ใƒ–ใƒญใƒƒใ‚ฏใ•ใ‚ŒใŸใ‚นใƒฌใƒƒใƒ‰ใŒๅพ…ๆฉŸใ—ใ€ใƒ–ใƒญใƒƒใ‚ฏใ•ใ‚Œใฆใ„ใชใ„ใ‚นใƒฌใƒƒใƒ‰ใŒๅฎŸ่กŒใ•ใ‚Œใฆใ‚ณใƒณใ‚ฝใƒผใƒซใซ_threadOutputใ‚’่กจ็คบใ—ใฆใ„ใ‚‹้–“ใซใ€ไบ’ใ„ใซใƒ–ใƒญใƒƒใ‚ฏใ™ใ‚‹ๅŒใ˜2ใคใฎใ‚นใƒฌใƒƒใƒ‰ใ‚’็คบใ—ใฆใ„ใพใ™ใ€‚ๆœ€ๅˆใซใ€_blockThread1ใฏfalseใ‚’้€š็Ÿฅใ™ใ‚‹ใ‚ˆใ†ใซๅˆๆœŸๅŒ–ใ•ใ‚Œใ€_blockThread2ใฏtrueใ‚’้€š็Ÿฅใ™ใ‚‹ใ‚ˆใ†ใซๅˆๆœŸๅŒ–ใ•ใ‚Œใพใ™ใ€‚ใ“ใ‚Œใฏใ€_blockThread2ใŒDisplayThread_2ใฎใƒซใƒผใƒ—ใ‚’ๆœ€ๅˆใซ้€š้Žใ™ใ‚‹ใจใใซใ€WaitOneๅ‘ผใณๅ‡บใ—ใ‚’็ถš่กŒใงใใ‚‹ใ‚ˆใ†ใซใชใ‚‹ไธ€ๆ–นใงใ€_blockThread1ใฏDisplayThread_1ใฎWaitOneๅ‘ผใณๅ‡บใ—ใ‚’ใƒ–ใƒญใƒƒใ‚ฏใ™ใ‚‹ใ“ใจใ‚’ๆ„ๅ‘ณใ—ใพใ™ใ€‚_blockThread2ใŒใ‚นใƒฌใƒƒใƒ‰2ใฎใƒซใƒผใƒ—ใฎ็ต‚ใ‚ใ‚Šใซ้”ใ™ใ‚‹ใจใ€ใ‚นใƒฌใƒƒใƒ‰1ใ‚’ใƒ–ใƒญใƒƒใ‚ฏใ‹ใ‚‰่งฃๆ”พใ™ใ‚‹ใŸใ‚ใซSetใ‚’ๅ‘ผใณๅ‡บใ—ใฆ_blockThread1ใซไฟกๅทใ‚’้€ใ‚Šใพใ™ใ€‚ๆฌกใซใ€ใ‚นใƒฌใƒƒใƒ‰2ใฏใ€ใ‚นใƒฌใƒƒใƒ‰1ใŒใƒซใƒผใƒ—ใฎ็ต‚ใ‚ใ‚Šใซๅˆฐ้”ใ—ใฆ_blockThread2ใงSetใ‚’ๅ‘ผใณๅ‡บใ™ใพใงใ€WaitOneๅ‘ผใณๅ‡บใ—ใงๅพ…ๆฉŸใ—ใพใ™ใ€‚ใ‚นใƒฌใƒƒใƒ‰1ใงๅ‘ผใณๅ‡บใ•ใ‚ŒใŸใ‚ปใƒƒใƒˆใฏใ‚นใƒฌใƒƒใƒ‰2ใฎใƒ–ใƒญใƒƒใ‚ฏใ‚’่งฃๆ”พใ—ใ€ใƒ—ใƒญใ‚ปใ‚นใŒๅ†้–‹ใ•ใ‚Œใพใ™ใ€‚ไธกๆ–นใฎAutoResetEvents๏ผˆ_blockThread1ใจ_blockThread2๏ผ‰ใ‚’ๆœ€ๅˆใซfalseใ‚’้€š็Ÿฅใ™ใ‚‹ใ‚ˆใ†ใซ่จญๅฎšใ—ใŸๅ ดๅˆใ€ไธกๆ–นใฎใ‚นใƒฌใƒƒใƒ‰ใŒไบ’ใ„ใซใƒˆใƒชใ‚ฌใƒผใ™ใ‚‹ๆฉŸไผšใชใ—ใซใƒซใƒผใƒ—ใฎ้€ฒ่กŒใ‚’ๅพ…ๆฉŸใ—ใ€ใƒ‡ใƒƒใƒ‰ใƒญใƒƒใ‚ฏใ€‚ 

ใƒชใ‚นใƒˆ3-ใ‚ใ‚‹ใ„ใฏใ€AutoResetEventใงใ‚นใƒฌใƒƒใƒ‰ใ‚’ใƒ–ใƒญใƒƒใ‚ฏใ™ใ‚‹

AutoResetEvent _blockThread1 = new AutoResetEvent(false);  
AutoResetEvent _blockThread2 = new AutoResetEvent(true);  
  
/// <summary>  
/// Thread 1, Displays that we are in thread 1  
/// </summary>  
void DisplayThread_1()  
{  
      while (_stopThreads == false)  
      {  
               // block thread 1  while the thread 2 is executing  
                _blockThread1.WaitOne();   
  
                // Set was called to free the block on thread 1, continue executing the code  
                  Console.WriteLine("Display Thread 1");  
  
                  _threadOutput = "Hello Thread 1";  
                  Thread.Sleep(1000);  // simulate a lot of processing  
  
                   // tell the user what thread we are in thread #1  
                  Console.WriteLine("Thread 1 Output --> {0}", _threadOutput);  
  
                // finished executing the code in thread 1, so unblock thread 2  
                  _blockThread2.Set();  
      }  
}  
  
/// <summary>  
/// Thread 2, Displays that we are in thread 2  
/// </summary>  
void DisplayThread_2()  
{  
      while (_stopThreads == false)  
      {  
            // block thread 2  while thread 1 is executing  
                  _blockThread2.WaitOne();   
  
            // Set was called to free the block on thread 2, continue executing the code  
                  Console.WriteLine("Display Thread 2");  
  
                  _threadOutput = "Hello Thread 2";  
                  Thread.Sleep(1000);  // simulate a lot of processing  
  
                   // tell the user we are in thread #2  
                  Console.WriteLine("Thread 2 Output --> {0}", _threadOutput);   
  
            // finished executing the code in thread 2, so unblock thread 1  
                _blockThread1.Set();  
      }  
} 

 

ใƒชใ‚นใƒˆ3ใง็”Ÿๆˆใ•ใ‚Œใ‚‹ๅ‡บๅŠ›ใฏใ€ๅ›ณ3ใซ็คบใ™ใƒญใƒƒใ‚ฏใ‚ณใƒผใƒ‰ใจๅŒใ˜ๅ‡บๅŠ›ใงใ™ใŒใ€AutoResetEventใ‚’ไฝฟ็”จใ™ใ‚‹ใจใ€็พๅœจใฎใ‚นใƒฌใƒƒใƒ‰ใŒๅ‡ฆ็†ใ‚’ๅฎŒไบ†ใ—ใŸใจใใซใ€ใ‚ใ‚‹ใ‚นใƒฌใƒƒใƒ‰ใŒๅˆฅใฎใ‚นใƒฌใƒƒใƒ‰ใซ้€š็Ÿฅใ™ใ‚‹ๆ–นๆณ•ใ‚’ใ‚ˆใ‚Šๅ‹•็š„ใซๅˆถๅพกใงใใพใ™ใ€‚

็ต่ซ–

ใƒžใ‚คใ‚ฏใƒญใƒ—ใƒญใ‚ปใƒƒใ‚ตใฎ้€Ÿๅบฆใฎ็†่ซ–็š„้™็•Œใ‚’ๆŠผใ—ไธŠใ’ใฆใ„ใ‚‹ใŸใ‚ใ€ใƒ†ใ‚ฏใƒŽใƒญใ‚ธใฏใ€ใ‚ณใƒณใƒ”ใƒฅใƒผใ‚ฟใƒ†ใ‚ฏใƒŽใƒญใ‚ธใฎ้€Ÿๅบฆใจใƒ‘ใƒ•ใ‚ฉใƒผใƒžใƒณใ‚นใ‚’ๆœ€้ฉๅŒ–ใงใใ‚‹ๆ–ฐใ—ใ„ๆ–นๆณ•ใ‚’่ฆ‹ใคใ‘ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚Šใพใ™ใ€‚ใƒžใƒซใƒใƒ—ใƒญใ‚ปใƒƒใ‚ตใƒใƒƒใƒ—ใฎ็™บๆ˜Žใจไธฆๅˆ—ใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐใธใฎไพตๅ…ฅใซใ‚ˆใ‚Šใ€ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใ‚’็†่งฃใ™ใ‚‹ใ“ใจใงใ€ใƒ ใƒผใ‚ขใฎๆณ•ๅ‰‡ใซๆŒ‘ๆˆฆใ—็ถšใ‘ใ‚‹ใŸใ‚ใซๅฟ…่ฆใชๅˆฉ็‚นใ‚’ใ‚‚ใŸใ‚‰ใ™ใ“ใ‚Œใ‚‰ใฎใ‚ˆใ‚Šๆœ€่ฟ‘ใฎใƒ†ใ‚ฏใƒŽใƒญใ‚ธใƒผใ‚’ๅ‡ฆ็†ใ™ใ‚‹ใŸใ‚ใซๅฟ…่ฆใชใƒ‘ใƒฉใƒ€ใ‚คใƒ ใซๅ‚™ใˆใ‚‹ใ“ใจใŒใงใใพใ™ใ€‚C๏ผƒใจ.NETใฏใ€ใƒžใƒซใƒใ‚นใƒฌใƒƒใƒ‰ใจไธฆๅˆ—ๅ‡ฆ็†ใ‚’ใ‚ตใƒใƒผใƒˆใ™ใ‚‹ๆฉŸ่ƒฝใ‚’ๆไพ›ใ—ใพใ™ใ€‚ใ“ใ‚Œใ‚‰ใฎใƒ„ใƒผใƒซใ‚’ไธŠๆ‰‹ใซๆดป็”จใ™ใ‚‹ๆ–นๆณ•ใ‚’็†่งฃใ™ใ‚Œใฐใ€็งใŸใก่‡ช่บซใฎๆ—ฅใ€…ใฎใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐๆดปๅ‹•ใซใŠใ„ใฆใ€ๅฐ†ๆฅใฎใ“ใ‚Œใ‚‰ใฎใƒใƒผใƒ‰ใ‚ฆใ‚งใ‚ขใฎ็ด„ๆŸใซๅ‚™ใˆใ‚‹ใ“ใจใŒใงใใพใ™ใ€‚ไธ€ๆ–นใ€ใ‚ทใƒฃใƒผใƒ—ใชใ‚ใชใŸใŒใงใใ‚‹ใฎใงใ€ใ‚นใƒฌใƒƒใƒ‰ใฎใ‚ใชใŸใฎ็Ÿฅ่ญ˜ใ‚จใƒณ.NETๅฏ่ƒฝๆ€งใ‚’ใ€‚ 

ใƒชใƒณใ‚ฏ๏ผšhttps://www.c-sharpcorner.com/article/introduction-to-multithreading-in-C-Sharp/

#csharp