Realm多线程中的那些坑...

¸öÈËÔÚ¿ª·¢ÖÐÓöµ½µÄһЩС¿Ó... ¿ÉÄÜ»á³ÖÐø¸üÐÂ...

Ô­ÎÄÁ´½Ó£ºhttp://blog.csdn.net/javine/article/details/51040110

1.RealmObject×Ô´øÏ̱߳£»¤¹¦ÄÜ£¬Ö»ÄÜÔÚ´´½¨ËüµÄÏß³ÌÖзÃÎÊ£¬ÔÚ×ÓÏß³ÌÖв»ÄÜ·ÃÎÊ¡£

Ò²¾ÍÊÇ˵£¬Èç¹ûÄãÔÚÖ÷Ïß³ÌÖÐnewÁËÒ»¸öRealmObject¶ÔÏó user£¬ÄÇôÔÚ×ÓÏß³ÌÖÐÊÇ·ÃÎʲ»ÁËuser¶ÔÏóµÄ¡£

ÒªÏëÔÚ×ÓÏß³ÌÖзÃÎÊ£¬±ØÐëÏȽ«user´æÈëReamÖУ¬È»ºóÔÚ×ÓÏß³ÌÖÐquery³öÀ´¡£

2.Èç¹ûRealm¹Ø±Õ£¬ËùÓвéѯµÃµ½µÄRealmObject¶¼²»ÄÜʹÓÃÁË¡£

Èç¹ûÏëÔÚ×ÓÏß³ÌÖÐÈ¥²éѯÊý¾Ý£¬È»ºóÔÚÖ÷Ïß³ÌÖÐʹÓÃÊÇÎÞ·¨×öµ½µÄ¡£ËùÒÔRealmÌṩµÄÒì²½²éѯ¾ÍºÜÖØÒªÁË...

3.Èç¹ûÏëÔÚRealm.close()Ö®ºó¼ÌÐø²Ù×÷²éѯµÃµ½µÄ¶ÔÏó£¬Ö»Äܸ´ÖÆÒ»·ÝÊý¾Ý´«³öÀ´¡£

Ϊ·ÀÖ¹RealmÍü¼Ç¹Ø±Õ£¬¸öÈËϲ»¶½«RealmµÄ¿ªÆôºÍ¹Ø±Õ·â×°ÔÚÒ»¸öº¯ÊýÖУ¬ÏëÕâÑù

public User getRealmObject(String code){
Realm realm = Realm.getDefaultInstance();
User user = realm.where(User.class)
.equalTo("code" code)
.findFirst();
realm.close();
return user;
}

×¢Ò⣬ÉÏÃæµÄ´úÂëÊÇ´íÎóµÄ£¡£¡£¡£¡²é³öÀ´µÄuser¸ù±¾²»ÄÜ×öÈκβÙ×÷£¡£¡£¡£¡

realm ColseµôÖ®ºó£¬user¶ÔÏó¾Í²»ÄÜ·ÃÎÊÁË£¬ËùÒÔÖ»Äܸ´ÖÆÒ»·ÝÊý¾Ý´«³öÀ´¡£

Õâ¸ö±È½Ï¿Ó£¬Realm¿ª·¢ÕßÊÇΪÁËËüµÄÒ»¸öÌØÉ«¹¦ÄÜAuto-Update£¬¼´×Ô¶¯¸üвéѯµ½µÄÊý¾Ý£¬

ÌØÒâÈòéѯµÃµ½µÄÊý¾ÝÓëÊý¾Ý¿âÖеÄÊý¾Ý±£³ÖÁËͬ²½£¬ËùÒÔRealmÒ»¹Ø£¬ÍâÃæµÄÊý¾ÝÒ²Óò»ÁË¡£

¶øÇÒ£¬Õâ¸öAuto-updateÔÝʱ»¹ÎÞ·¨¹Ø±Õ£¬stackOverFlowÉÏÓÐ˵ÒÔºó¿ÉÄÜ»áÌṩ¹Ø±ÕÕâ¸ö¹¦Äܵķ½·¨¡£

Èç¹ûÄãµÄRealmObject·Ç³£¸´ÔÓ£¬ÒªcopyÒ»·ÝÊý¾Ý½«»áºÜÂé·³...

¶øÇÒÕ⻹²»ÊÇ×î¿ÓµÄ£¬×î¿ÓµÄÊÇÏÂÃæÕâÌõ¡£

4.Èç¹ûÖ±½ÓÐ޸Ļòɾ³ýqueryµÃµ½µÄÊý¾Ý£¬±ØÐëÔÚtransactionÖÐÍê³É...

Ò²¾ÍÊÇ˵£¬Äã¸ù±¾²»ÄÜ°Ñquery·µ»ØµÄ¶ÔÏ󣬵±³ÉÆÕͨ¶ÔÏóÈ¥¸³Öµ»òɾ³ý£¬Èç¹ûÏëÒªÖ±½Ó²Ù×÷...ok£¬°Ñ¶ÔÏócopyÒ»·Ý´«³öÀ´...

ÔÝʱ¾ÍÕâЩ°É¡£

¸½ÁíһƪRealmʵս×ܽá---Android