static public IoCardBase GetIntance(IoCardType ioCardType) { if (ioCardBase == null) { lock (objLock) { if (ioCardBase == null) { ioCardBase = CreateAxis(ioCardType); } } } return(ioCardBase); }
/// <summary> /// 创建一个IO卡 /// </summary> /// <param name="ioCardType">IO卡类型</param> private static IoCardBase CreateAxis(IoCardType ioCardType) { switch (ioCardType) { case IoCardType.IOC0640: return(new IOC0640Card()); break; default: throw new Exception("没有此类型!!!"); break; } }