AlekXL
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору protoror Цитата: я вот не понял, в 10 вроде есть натив контролы на ios а на андроид как то непонятно написано то ли есть то ли нет | есть только сторонняя либа DPF, ну и напильник нужен. ----- вопросик: предположим мне нужно создать объект в конкурентной среде без лока Код: procedure EnsureObject(); var myNewObj:TObject; used:boolean; begin if not assigned(FMyMemberObj) then begin myNewObj:=TObject.Create(); AtomicCmpExchange(Pointer(FMyMemberObj), Pointer(myNewObj),nil,used); if not used then FreeAndNil(myNewObj) // else myNewObj._ObjAddRef();//damn arc!!1 ; end; end; | под десктопом это должно сработать, но с использованием ARC все сложнее: нужно инкремент счетчика сделать. Но в декстопе нет такого метода: Вопрос подскажите элегантный способ решить эту задачу | Всего записей: 792 | Зарегистр. 24-04-2008 | Отправлено: 20:11 01-09-2015 | Исправлено: AlekXL, 20:12 01-09-2015 |
|