Click here to Skip to main content
15,890,579 members
Home / Discussions / C#
   

C#

 
QuestionInput type ="image" in c# Pin
tedyboy98-Apr-10 11:15
tedyboy98-Apr-10 11:15 
AnswerRe: Input type ="image" in c# Pin
Arun Jacob8-Apr-10 19:07
Arun Jacob8-Apr-10 19:07 
GeneralRe: Input type ="image" in c# Pin
tedyboy98-Apr-10 21:07
tedyboy98-Apr-10 21:07 
QuestionManualResetEvent set()/waitOne() Pin
igalep1328-Apr-10 9:17
igalep1328-Apr-10 9:17 
AnswerRe: ManualResetEvent set()/waitOne() Pin
Luc Pattyn8-Apr-10 9:26
sitebuilderLuc Pattyn8-Apr-10 9:26 
AnswerRe: ManualResetEvent set()/waitOne() Pin
supercat98-Apr-10 9:44
supercat98-Apr-10 9:44 
GeneralRe: ManualResetEvent set()/waitOne() Pin
igalep1328-Apr-10 10:09
igalep1328-Apr-10 10:09 
AnswerRe: ManualResetEvent set()/waitOne() Pin
igalep1328-Apr-10 10:52
igalep1328-Apr-10 10:52 
i wote next code

class SynchronizedMailBox : MailBox
    {
        private static ManualResetEvent mre = new ManualResetEvent(false);//signale for blocking till first set() call
        private static Mutex mainMutex = new Mutex(false);

        public override void Write(Message msg)
        {
            mainMutex.WaitOne();//lock array Message for writing into it

                if (IsEmpty())//if array message is still empty, release all waiting read thread (if any) 
                    mre.Set();

                base.Write(msg);

            mainMutex.ReleaseMutex();//unLock array Message after writing into it
        }

        public override Message Read()
        {
            mainMutex.WaitOne();//lock array Message for reading from it

                mre.WaitOne();//if first thread is for reading, and array message is empty, wait here
            
                Message ms = base.Read();

                if (IsEmpty())//if after reading no messages has left, reset(), for next thread to be blocked before reading
                    mre.Reset();

            mainMutex.ReleaseMutex();//unLock array Message after reading from it

            return ms;
        }
    }


my question is, what will be happen when those lines will be executed
if (IsEmpty())//if array message is still empty, release all waiting read thread (if any)
                   mre.Set();

and there are blocked thread/s on WaitOne() in read method.
the fact that write method is still under the mutex will prevent from unblocked reading thread/s to continue running ?

one more question is about if(isEmpty()) inside read method ,
do i need one more mutex to close the "if" or the main mutex which "close" the whole method is enough ?

tanks
GeneralRe: ManualResetEvent set()/waitOne() Pin
igalep1329-Apr-10 0:37
igalep1329-Apr-10 0:37 
GeneralRe: ManualResetEvent set()/waitOne() Pin
supercat910-Apr-10 13:21
supercat910-Apr-10 13:21 
QuestionLegal issue - Using controls from Code Project in commercial applications Pin
ekareem8-Apr-10 8:11
ekareem8-Apr-10 8:11 
AnswerRe: Legal issue - Using controls from Code Project in commercial applications Pin
EliottA8-Apr-10 8:45
EliottA8-Apr-10 8:45 
AnswerRe: Legal issue - Using controls from Code Project in commercial applications Pin
Not Active8-Apr-10 9:46
mentorNot Active8-Apr-10 9:46 
Questionusing a delayed sign assembly Pin
prasadbuddhika8-Apr-10 6:37
prasadbuddhika8-Apr-10 6:37 
Questionwrite a program like windows magnify Pin
itresearches8-Apr-10 5:09
itresearches8-Apr-10 5:09 
AnswerRe: write a program like windows magnify Pin
EliottA8-Apr-10 8:50
EliottA8-Apr-10 8:50 
QuestionAccessing to a control created at runtime Pin
aleroot8-Apr-10 5:05
aleroot8-Apr-10 5:05 
AnswerRe: Accessing to a control created at runtime Pin
OriginalGriff8-Apr-10 5:28
mveOriginalGriff8-Apr-10 5:28 
GeneralRe: Accessing to a control created at runtime Pin
aleroot8-Apr-10 5:40
aleroot8-Apr-10 5:40 
GeneralRe: Accessing to a control created at runtime Pin
aleroot8-Apr-10 9:42
aleroot8-Apr-10 9:42 
QuestionPassing database login info to Crystal report - problem going to production Pin
jamesc698-Apr-10 4:54
jamesc698-Apr-10 4:54 
Questionstatic property with polymorphism Pin
lukeer8-Apr-10 4:12
lukeer8-Apr-10 4:12 
AnswerRe: static property with polymorphism Pin
PIEBALDconsult8-Apr-10 4:28
mvePIEBALDconsult8-Apr-10 4:28 
GeneralRe: static property with polymorphism Pin
lukeer8-Apr-10 4:34
lukeer8-Apr-10 4:34 
AnswerRe: static property with polymorphism Pin
Jimmanuel8-Apr-10 4:38
Jimmanuel8-Apr-10 4:38 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.