Windows Vista Forums

Serialization of Dictionary<> and Thread Synch

  1. #1


    Jon Guest

    Serialization of Dictionary<> and Thread Synch

    Hi

    I may be being stupid here (as I haven't tried it yet) but if I have WCF
    Service which returns a static Dictionary<K,V> object (which I understand is
    serializable in WCF) and another thread were to modify that collection while
    it were serializing, what would happen?

    Does the framework take care of it (e.g. snapshot the collection), or would
    I need to synchronize the addition/removal of Dictionary objects with the
    service that returns the Dictionary to calling clients?



    Thanks
      My System SpecsSystem Spec

  2. #2


    Arkady Frenkel Guest

    Re: Serialization of Dictionary<> and Thread Synch

    In such cases I don't take a chance and copy object ( Dictionary in your
    case ) under Sync object ( Lock()/Monitor()... )
    before return copied object from service, so I'm calm that object will be
    returned to client without changes

    Arkady

    "Jon" <Jon@discussions.microsoft.com> wrote in message
    news:48244107-16D2-406E-BCA5-02A117E3038E@microsoft.com...
    > Hi
    >
    > I may be being stupid here (as I haven't tried it yet) but if I have WCF
    > Service which returns a static Dictionary<K,V> object (which I understand
    > is
    > serializable in WCF) and another thread were to modify that collection
    > while
    > it were serializing, what would happen?
    >
    > Does the framework take care of it (e.g. snapshot the collection), or
    > would
    > I need to synchronize the addition/removal of Dictionary objects with the
    > service that returns the Dictionary to calling clients?
    >
    > Thanks



      My System SpecsSystem Spec

  3. #3


    Steve B. Guest

    Re: Serialization of Dictionary<> and Thread Synch

    If the serialization process use an enumerator on the dictionnary while it
    serialize... The dictionnary.add method will crash, doesn't it ?


    "Arkady Frenkel" <arkadyf@hotmailxdotx.com> a écrit dans le message de news:
    uC5PLtF%23GHA.4468@TK2MSFTNGP05.phx.gbl...
    > In such cases I don't take a chance and copy object ( Dictionary in your
    > case ) under Sync object ( Lock()/Monitor()... )
    > before return copied object from service, so I'm calm that object will be
    > returned to client without changes
    >
    > Arkady
    >
    > "Jon" <Jon@discussions.microsoft.com> wrote in message
    > news:48244107-16D2-406E-BCA5-02A117E3038E@microsoft.com...
    >> Hi
    >>
    >> I may be being stupid here (as I haven't tried it yet) but if I have WCF
    >> Service which returns a static Dictionary<K,V> object (which I understand
    >> is
    >> serializable in WCF) and another thread were to modify that collection
    >> while
    >> it were serializing, what would happen?
    >>
    >> Does the framework take care of it (e.g. snapshot the collection), or
    >> would
    >> I need to synchronize the addition/removal of Dictionary objects with the
    >> service that returns the Dictionary to calling clients?
    >>
    >> Thanks

    >
    >



      My System SpecsSystem Spec

Serialization of Dictionary<> and Thread Synch

Similar Threads
Thread Thread Starter Forum Replies Last Post
Start background thread when a UI button is clicked, and Update UIbutton from background thread Curious .NET General 0 31 Mar 2010
How do the current thread get thread notification of OS intruption Alexander Wykel .NET General 0 10 Jul 2009
how do I synch windows mail calendar with iphone since Outlook is only option for calendar synch cori traub Vista mail 1 01 Mar 2009
Start a new thread from an existing thread, which was started from atimer Curious .NET General 1 13 Jun 2008
Dictionary<TKey,TValue> as a Dictionary key in C# 2.0 dox .NET General 5 19 Mar 2008