Mercurial > hg > Document > Growi
comparison Christie/for.NET.md @ 27:459b9fa6f047
backup 2021-01-20
author | autobackup |
---|---|
date | Wed, 20 Jan 2021 00:10:03 +0900 |
parents | 6f9bfbfc54c9 |
children | 0bd2a99a349e |
comparison
equal
deleted
inserted
replaced
26:f0d19eb29616 | 27:459b9fa6f047 |
---|---|
318 C#のTaskでのThreadPoolについて | 318 C#のTaskでのThreadPoolについて |
319 | 319 |
320 https://stackoverflow.com/questions/35734051/c-sharp-task-thread-pool-running-100-tasks-across-only-10-threads | 320 https://stackoverflow.com/questions/35734051/c-sharp-task-thread-pool-running-100-tasks-across-only-10-threads |
321 | 321 |
322 --- | 322 --- |
323 lockのwaitとnotifyについて | |
324 Javaでは排他制御として`synchronized(lock)`(lockはobject型)を使用することで排他制御ができる。 | |
325 解除にはlock.notifyなどを使う | |
326 https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#notify() | |
327 | |
328 C#ではMoniterクラスの中にwaitやpulse関数があり、同じように使えるっぽい | |
329 https://docs.microsoft.com/en-us/dotnet/api/system.threading.monitor.pulse?view=net-5.0 | |
330 | |
331 ```java | |
332 Object lock = new Object; | |
333 synchronized(lock) { | |
334 lock.notify(); // lockの解除 | |
335 } | |
336 ``` | |
337 | |
338 ```c# | |
339 objecy lockObj = new object; | |
340 lock(lockObj) { | |
341 Moniter.Pulse(lock); | |
342 } | |
343 ``` | |
344 | |
345 --- | |
323 ## TODO | 346 ## TODO |
324 * annotation → fin | 347 * annotation → fin |
325 * daemon | 348 * daemon |
326 * connection → cgm要実装 | 349 * connection → cgm要実装 |
327 * ChristieDaemon → fin | 350 * ChristieDaemon → fin |
328 * AcceptThread → cgm要実装 | 351 * AcceptThread → cgm要実装 |
329 * IncomingTcpConnection → CodeGearManager要実装 | 352 * IncomingTcpConnection → CodeGearManager要実装 |
330 * OutboundTcpConnection → fin | 353 * OutboundTcpConnection → fin |
354 * ThreadPoolExecutors 実装 | |
331 * codegear | 355 * codegear |
332 * CodeGear → InputDataGear要実装 | 356 * CodeGear → InputDataGear要実装 |
333 * InputDataGear | 357 * InputDataGear |
334 * cgm要実装 | 358 * cgm要実装 |
335 * CodeGearManager | 359 * CodeGearManager |
336 * IncomingTcpConnection要実装 | 360 * cg要実装 |
337 * ChristieDeamon要実装 | 361 * ThreadPoolExcuter要実装 |
338 * ThreadPoolExecutorとは | |
339 * CodeGearExecutor | 362 * CodeGearExecutor |
340 * cgm要実装 | 363 * cgm要実装 |
341 * cg要実装 | 364 * cg要実装 |
342 * datagear | 365 * datagear |
343 * command | 366 * command |
349 * dg → fin | 372 * dg → fin |
350 * DataGearManager → fin | 373 * DataGearManager → fin |
351 * DataGears → fin | 374 * DataGears → fin |
352 * WaitList → fin | 375 * WaitList → fin |
353 * LocalDataGearManager → fin | 376 * LocalDataGearManager → fin |
354 * RemoteDataGearManager → cgm要実装 | 377 * RemoteDataGearManager → fin |
355 | 378 |
356 | 379 |
357 | 380 |
358 | 381 |