Exemplo n.º 1
0
    def __init__(self, *args, **kwargs):
        super().__init__()

        self.config = config.SettingAccessor(self.config_prefix)
        self.batch_size = self.config["batch_size"]
        self.inference_comm = InferenceComm()
        self._stop = subject.Subject()
        self.feed_scheduler = scheduler.ThreadPoolScheduler()
        self.process_scheduler = scheduler.ThreadPoolScheduler()
        self.subject_provider = services.service_provider.SubjectProvider()
        self.subjects: Subjects = self.subject_provider.get_or_create_instance(
            None)
Exemplo n.º 2
0
    def addFile(self, files):
        def _createObserver(subscription: rx.typing.Subscription,
                            scheduler) -> rx.Observable:
            for file in files:
                print("file:%s" % file)
                with open(file, mode='r') as f:
                    content = f.readlines()
                subscription.on_next(Class.LogInfo(file, "".join(content)))

        rx.create(_createObserver).pipe(
            ops.subscribe_on(scheduler.ThreadPoolScheduler()),
            qtScheduler.QtScheduler()).subscribe(
                on_next=lambda value: self.handlerLogInfoResult(value))
Exemplo n.º 3
0
    def _initUI(self):
        self.mainLayout = QHBoxLayout(self)
        # self.treeModel = QFileSystemModel(self)
        # self.treeView = QTreeView(self)
        self.setAcceptDrops(True)
        #
        # self.treeView.setModel(self.treeModel)
        # self.treeView.setSortingEnabled(True)
        # self.treeView.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
        # self.treeView.customContextMenuRequested.connect(self.showContextMenu)
        # self.mainLayout.addWidget(self.treeView)
        self.editTabsView = QTabWidget(self)
        self.editTabsView.setTabsClosable(True)
        self.editTabsView.setMovable(True)
        self.editTabsView.setDocumentMode(True)
        self.editTabsView.tabCloseRequested.connect(self.tabCloseRequested)
        self.contentLayout = QVBoxLayout(self)
        self.topHandlerLayout = QHBoxLayout(self)
        self.input = QLineEdit(self)
        self.searchButton = QPushButton(self)
        self.searchButton.clicked.connect(self.handerFilter)
        self.searchButton.setText("搜索当前文件")

        self.searchButtonAll = QPushButton(self)
        self.searchButtonAll.clicked.connect(self.handerFilterAll)
        self.searchButtonAll.setText("搜索全部文件")

        self.topHandlerLayout.addWidget(self.input, 1)
        self.topHandlerLayout.addWidget(self.searchButton)
        self.topHandlerLayout.addWidget(self.searchButtonAll)

        self.contentLayout.addLayout(self.topHandlerLayout)

        self.contentLayout.addWidget(self.editTabsView, 1)
        self.mainLayout.addLayout(self.contentLayout, 1)
        self.setLayout(self.mainLayout)
        self._initMenus()
        RxBus.instance.register(self, Class.LogInfo).pipe(
            ops.subscribe_on(scheduler.ThreadPoolScheduler()),
            qtScheduler.QtScheduler()).subscribe(
                on_next=lambda value: self.handlerLogInfo(value))
Exemplo n.º 4
0
    def startFilter(self, index):
        searchTag = self.input.displayText()
        print(searchTag)
        filterData = list()
        if index == -1:
            print("全部")
            for i in range(self.editTabsView.count()):
                currentTab = self.editTabsView.widget(i)
                data = currentTab.toPlainText()
                filterData.append(data)

        else:
            data = self.editTabsView.currentWidget().toPlainText()
            filterData.append(data)
        Fiter().filter(searchTag, filterData).pipe(
            ops.subscribe_on(scheduler.ThreadPoolScheduler()),
            qtScheduler.QtScheduler()).subscribe(
                on_next=lambda filterResult: self.handlerFilterResult(
                    filterResult),
                on_error=lambda e: self.handlerFilterErrorResult(e),
            )
Exemplo n.º 5
0
 def __init__(self):
     super().__init__()
     self._stop = subject.Subject()
     self.scheduler = scheduler.ThreadPoolScheduler()
Exemplo n.º 6
0
import rx
from rx import operators as ops
import multiprocessing
import rx.scheduler as scheduler

thread_count = multiprocessing.cpu_count()
thread_pool_scheduler = scheduler.ThreadPoolScheduler(thread_count)

rx.of(1, 2, 3, 4, 5, 6, 7, 8, 9, 10).pipe(
    ops.filter(lambda i: i % 2 == 0),
    ops.subscribe_on(thread_pool_scheduler)).subscribe(lambda i: print(1))

rx.of(1, 2, 3, 4, 5, 6, 7, 8, 9, 10).pipe(
    ops.filter(lambda i: i % 2 == 0),
    ops.subscribe_on(thread_pool_scheduler)).subscribe(lambda i: print(2))

rx.of(1, 2, 3, 4, 5, 6, 7, 8, 9, 10).pipe(
    ops.filter(lambda i: i % 2 == 0),
    ops.subscribe_on(thread_pool_scheduler)).subscribe(lambda i: print(3))

rx.of(1, 2, 3, 4, 5, 6, 7, 8, 9, 10).pipe(
    ops.filter(lambda i: i % 2 == 0),
    ops.subscribe_on(thread_pool_scheduler)).subscribe(lambda i: print(4))

print("AAAAA")
Exemplo n.º 7
0
    else:
        print("Copy skipped")

    print("Building network...")
    net = network.RamanAINetwork(cfg.network.structure)

    print("Begin training...")
    stream = train.train_net(net, train_dataset, valid_dataset, test_dataset,
                             cfg)
    handler = utils.str_to_obj(
        f"train_stream_handlers.{cfg.train_stream_handler}")

    # main loop scheduler
    loop = asyncio.new_event_loop()
    main_scheduler = AsyncIOThreadSafeScheduler(loop)
    s = scheduler.ThreadPoolScheduler()
    observer = handler(cfg, cfg_dir)

    stream.pipe(operators.subscribe_on(s), ).subscribe(observer)

    if observer.plot_sub:

        def plot_task(data):
            f: plt.Figure = plt.gcf()
            f.clear()
            ax = f.add_subplot(211)
            ax.plot(data["epoch"], data["train"], c="red")
            if data["valid"]:
                ax.plot(data["epoch"], data["valid"], c="blue")
            ax = f.add_subplot(212)
            if data["test_output"]: