예제 #1
0
        public MPIMessageSink()
        {
            communicator      = Communicator.world;
            messageSerializer = new MPIMessageSerializer();

            nodeMessages = new ConcurrentQueue <INodeMessage>();
            sendThread   = new Thread(SendLoop)
            {
                Name = "MessageSendThread"
            };

            keepRunning = true;
            sendThread.Start();
        }
        public MPIMessageHub()
        {
            documentTokenizedSubject   = new Subject <Document>();
            documentNormalizedSubject  = new Subject <Document>();
            assignmentsSubject         = new Subject <WorkAssignment>();
            availabilityChangesSubject = new Subject <NodeAvailabilityChange>();

            messageSerializer = new MPIMessageSerializer();
            communicator      = Communicator.world;
            keepReading       = true;

            readThread = new Thread(ReadMessagesLoop)
            {
                Name = "ReadMessagesThread"
            };
            readThread.Start();
        }