Interface ParallelPropertyMessageManager

    • Method Detail

      • initChannels

        void initChannels​(int channel_num)
      • syncStateOnOuterVertex

        <FRAG_T extends ArrowFragment,​MSG_T> void syncStateOnOuterVertex​(FRAG_T frag,
                                                                               Vertex<Long> vertex,
                                                                               MSG_T msg,
                                                                               int channel_id)
      • syncStateOnOuterVertexNoMsg

        <FRAG_T extends ArrowFragment,​OID> void syncStateOnOuterVertexNoMsg​(FRAG_T frag,
                                                                                  Vertex<Long> vertex,
                                                                                  int channel_id,
                                                                                  OID unused)
        SyncState on outer vertex without message, used in bfs etc.
        Type Parameters:
        FRAG_T - fragment type.
        Parameters:
        frag - fragment.
        vertex - query vertex.
        channel_id - message channel id.
      • sendMsgThroughOEdges

        <FRAG_T extends ArrowFragment,​MSG_T> void sendMsgThroughOEdges​(FRAG_T frag,
                                                                             Vertex<Long> vertex,
                                                                             int elabelId,
                                                                             MSG_T msg,
                                                                             int channel_id)
      • sendMsgThroughIEdges

        <FRAG_T extends ArrowFragment,​MSG_T> void sendMsgThroughIEdges​(FRAG_T frag,
                                                                             Vertex<Long> vertex,
                                                                             int elabelId,
                                                                             MSG_T msg,
                                                                             int channel_id)
      • SendMsgThroughEdges

        <FRAG_T extends ArrowFragment,​MSG_T> void SendMsgThroughEdges​(FRAG_T frag,
                                                                            Vertex<Long> vertex,
                                                                            int elabelId,
                                                                            MSG_T msg,
                                                                            int channel_id)
      • getMessageInBuffer

        @com.alibaba.fastffi.FFINameAlias("GetMessages") boolean getMessageInBuffer​(MessageInBuffer buf)
      • parallelProcess

        default <OID_T,​VID_T,​MSG_T> void parallelProcess​(ArrowFragment<OID_T> frag,
                                                                     int threadNum,
                                                                     ExecutorService executor,
                                                                     Supplier<MSG_T> msgSupplier,
                                                                     BiConsumer<Vertex<Long>,​MSG_T> consumer)
        This define the parallel process for default labelid, i.e. 0.
        Type Parameters:
        MSG_T - message type.
        Parameters:
        frag - fragment.
        threadNum - num thread.
        executor - Executor service.
        msgSupplier - lambda for msg creation.
        consumer - consumer.