Even if that works, what happens when two threads that have a read lock attempt to switch to a write lock simultaneously?  How does the thread know it got the write lock first and the data is unchanged?



On Thu, Aug 18, 2011 at 12:20 PM, Anthony Minessale <anthony.minessale@gmail.com> wrote:
can't you just write lock it right away?

On Thu, Aug 18, 2011 at 7:19 AM, Christopher Rienzo <cmrienzo@gmail.com> wrote:
> I forgot to mention that you'd have to repeat the find operation once you
> get the write lock since there is a small window between the unlock and lock
> where another thread may have created the item.
>
>
> On Thu, Aug 18, 2011 at 6:42 AM, Christopher Rienzo <cmrienzo@gmail.com>
> wrote:
>>
>> Unlock the read lock and then lock as a write lock.
>>
>> On Aug 17, 2011 8:20 PM, "Seven Du" <dujinfang@gmail.com> wrote:
>>
>> Hi,
>>
>>
>> Just wondering how to upgrade a read lock to a write lock, say I do a
>> find_or_create_item_in_queue()
>> switch_thread_rwlock_rdlock(lock);
>> find an item from queue, if not found, create one
>> switch_thread_rwlock_upgrade_to_wrlock(lock);
>> write
>> switch_thread_rwlock_unlock(lock);
>> Thanks
>> --
>> Seven Du
>> About: http://about.me/dujinfang
>> Blog: http://www.dujinfang.com
>> Proj:  http://www.freeswitch.org.cn
>> Sent with Sparrow
>>
>>
>> _______________________________________________
>> Join us at ClueCon 2011, Aug 9-11, Chicago
>> http://www.cluecon.com 877-7-4ACLUE
>>
>> FreeSWITCH-dev mailing list
>> FreeSWITCH-dev@lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
>> http://www.freeswitch.org
>>
>
>
> _______________________________________________
> Join us at ClueCon 2011, Aug 9-11, Chicago
> http://www.cluecon.com 877-7-4ACLUE
>
> FreeSWITCH-dev mailing list
> FreeSWITCH-dev@lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
> http://www.freeswitch.org
>
>



--
Anthony Minessale II

FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/
Twitter: http://twitter.com/FreeSWITCH_wire

AIM: anthm
MSN:anthony_minessale@hotmail.com
GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com
IRC: irc.freenode.net #freeswitch

FreeSWITCH Developer Conference
sip:888@conference.freeswitch.org
googletalk:conf+888@conference.freeswitch.org
pstn:+19193869900

_______________________________________________
Join us at ClueCon 2011, Aug 9-11, Chicago
http://www.cluecon.com 877-7-4ACLUE

FreeSWITCH-dev mailing list
FreeSWITCH-dev@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
http://www.freeswitch.org