{
case AppStatus.開始:
- // 進行タスク起動。
- this._é\80²è¡\8cStatus = new TriStateEvent( TriStateEvent.状態種別.OFF );
- Task.Factory.StartNew( this._進行タスクエントリ );
+ // é«\98é\80\9fé\80²è¡\8cã\82¿ã\82¹ã\82¯èµ·å\8b\95ã\80\82
+ this._é«\98é\80\9fé\80²è¡\8cã\82¹ã\83\86ã\83¼ã\82¿ã\82¹ = new TriStateEvent( TriStateEvent.状態種別.OFF );
+ Task.Factory.StartNew( this._é«\98é\80\9fé\80²è¡\8cã\82¿ã\82¹ã\82¯ã\82¨ã\83³ã\83\88ã\83ª );
// 描画タスク開始。
this._AppStatus = AppStatus.実行中;
{
using( Log.Block( FDKUtilities.現在のメソッド名 ) )
{
- lock( this._é\80²è¡\8cæ\8f\8fç\94»é\96\93同期 )
+ lock( this._é«\98é\80\9fé\80²è¡\8cã\81¨æ\8f\8fç\94»ã\81®同期 )
{
if( App.システム設定.全画面モードである )
this.全画面モード = true;
{
using( Log.Block( FDKUtilities.現在のメソッド名 ) )
{
- lock( this._é\80²è¡\8cæ\8f\8fç\94»é\96\93同期 )
+ lock( this._é«\98é\80\9fé\80²è¡\8cã\81¨æ\8f\8fç\94»ã\81®同期 )
{
// 通常は進行タスクから終了するが、Alt+F4でここに来た場合はそれが行われてないので、行う。
if( this._AppStatus != AppStatus.終了 )
// ※ Form イベントの override メソッドは描画スレッドで実行されるため、処理中に進行タスクが呼び出されると困る場合には、進行タスクとの lock を忘れないこと。
- private readonly object _é\80²è¡\8cæ\8f\8fç\94»é\96\93同期 = new object();
+ private readonly object _é«\98é\80\9fé\80²è¡\8cã\81¨æ\8f\8fç\94»ã\81®同期 = new object();
/// <summary>
/// 進行タスクの状態。
/// OFF:タスク起動前、ON:タスク実行中、OFF:タスク終了済み
/// </summary>
- private TriStateEvent _é\80²è¡\8cStatus;
+ private TriStateEvent _é«\98é\80\9fé\80²è¡\8cã\82¹ã\83\86ã\83¼ã\82¿ã\82¹;
/// <summary>
- /// 進行ループの処理内容。
+ /// é«\98é\80\9fé\80²è¡\8cã\83«ã\83¼ã\83\97ã\81®å\87¦ç\90\86å\86\85容ã\80\82
/// </summary>
- private void _進行タスクエントリ()
+ private void _é«\98é\80\9fé\80²è¡\8cã\82¿ã\82¹ã\82¯ã\82¨ã\83³ã\83\88ã\83ª()
{
Log.現在のスレッドに名前をつける( "高速進行" );
- Log.Info( "進行タスクを開始します。" );
+ Log.Info( "é«\98é\80\9fé\80²è¡\8cã\82¿ã\82¹ã\82¯ã\82\92é\96\8bå§\8bã\81\97ã\81¾ã\81\99ã\80\82" );
- this._é\80²è¡\8cStatus.現在の状態 = TriStateEvent.状態種別.ON;
+ this._é«\98é\80\9fé\80²è¡\8cã\82¹ã\83\86ã\83¼ã\82¿ã\82¹.現在の状態 = TriStateEvent.状態種別.ON;
while( true )
{
- lock( this._é\80²è¡\8cæ\8f\8fç\94»é\96\93同期 )
+ lock( this._é«\98é\80\9fé\80²è¡\8cã\81¨æ\8f\8fç\94»ã\81®同期 )
{
- if( this._é\80²è¡\8cStatus.ç\8f¾å\9c¨ã\81®ç\8a¶æ\85\8b != TriStateEvent.ç\8a¶æ\85\8b種å\88¥.ON ) // lock してる間に状態が変わることがあるので注意。
+ if( this._é«\98é\80\9fé\80²è¡\8cã\82¹ã\83\86ã\83¼ã\82¿ã\82¹.ç\8f¾å\9c¨ã\81®ç\8a¶æ\85\8b != TriStateEvent.ç\8a¶æ\85\8b種å\88¥.ON ) // lock してる間に状態が変わることがあるので注意。
break;
//App.入力管理.すべての入力デバイスをポーリングする();
// --> 入力ポーリングの挙動はステージごとに異なるので、それぞれのステージ内で行う。
- App.ステージ管理.現在のステージ.進行する();
+ App.ã\82¹ã\83\86ã\83¼ã\82¸ç®¡ç\90\86.ç\8f¾å\9c¨ã\81®ã\82¹ã\83\86ã\83¼ã\82¸.é«\98é\80\9fé\80²è¡\8cã\81\99ã\82\8b();
}
Thread.Sleep( 1 ); // ウェイト。
}
- this._é\80²è¡\8cStatus.現在の状態 = TriStateEvent.状態種別.無効;
+ this._é«\98é\80\9fé\80²è¡\8cã\82¹ã\83\86ã\83¼ã\82¿ã\82¹.現在の状態 = TriStateEvent.状態種別.無効;
- Log.Info( "進行タスクを終了しました。" );
+ Log.Info( "é«\98é\80\9fé\80²è¡\8cã\82¿ã\82¹ã\82¯ã\82\92çµ\82äº\86ã\81\97ã\81¾ã\81\97ã\81\9fã\80\82" );
}
/// <summary>
var gd = App.グラフィックデバイス;
bool vsync = false;
- lock( this._é\80²è¡\8cæ\8f\8fç\94»é\96\93同期 )
+ lock( this._é«\98é\80\9fé\80²è¡\8cã\81¨æ\8f\8fç\94»ã\81®同期 )
{
if( this._AppStatus != AppStatus.実行中 ) // 上記lock中に終了されている場合があればそれをはじく。
return;
{
if( this._AppStatus != AppStatus.終了 )
{
- this._é\80²è¡\8cStatus.現在の状態 = TriStateEvent.状態種別.OFF;
+ this._é«\98é\80\9fé\80²è¡\8cã\82¹ã\83\86ã\83¼ã\82¿ã\82¹.現在の状態 = TriStateEvent.状態種別.OFF;
this._AppStatus = AppStatus.終了;
// _AppStatus を変更したあとに、GUI スレッドで非同期実行を指示する。