/**
  * public $TH;
  * public $A;
  * public $B;
  * public $C;
  * @throws Exception
  * @return boolean
  */
 private static function startMysqlKsdfMemory()
 {
     $ksdf_first = KsdfMemory::findFirst();
     if (isset($ksdf_first->TH)) {
         return true;
     } else {
         try {
             $manager = new TxManager();
             $transaction = $manager->get();
             $ksdf_data = Ksdf::find();
             foreach ($ksdf_data as $ksdf_record) {
                 $ksdf_memory = new KsdfMemory();
                 $ksdf_memory->setTransaction($transaction);
                 $ksdf_memory->TH = $ksdf_record->TH;
                 $ksdf_memory->A = $ksdf_record->A;
                 $ksdf_memory->B = $ksdf_record->B;
                 $ksdf_memory->C = $ksdf_record->C;
                 if ($ksdf_memory->create() == false) {
                     unset($ksdf_data);
                     $transaction->rollback("KSDF DATA INSERT INTO MEMORY TABLE ERROR!");
                 }
             }
             if (isset($ksdf_data)) {
                 unset($ksdf_data);
             }
             $transaction->commit();
             return true;
         } catch (TxFailed $e) {
             throw new Exception("Failed, reason: " . $e->getMessage());
         }
     }
 }