本文整理汇总了TypeScript中@nteract/actions.launchKernelByName函数的典型用法代码示例。如果您正苦于以下问题:TypeScript launchKernelByName函数的具体用法?TypeScript launchKernelByName怎么用?TypeScript launchKernelByName使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了launchKernelByName函数的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。
示例1: mergeMap
mergeMap((action: actions.FetchContentFulfilled) => {
const state: AppState = state$.value;
const contentRef = action.payload.contentRef;
const content = selectors.content(state, { contentRef });
if (
!content ||
content.type !== "notebook" ||
content.model.type !== "notebook"
) {
// This epic only handles notebook content
return empty();
}
const filepath = content.filepath;
const notebook = content.model.notebook;
const { cwd, kernelSpecName } = extractNewKernel(filepath, notebook);
return of(
actions.launchKernelByName({
kernelSpecName,
cwd,
kernelRef: action.payload.kernelRef,
selectNextKernel: true,
contentRef: action.payload.contentRef
})
);
})
开发者ID:nteract,项目名称:nteract,代码行数:31,代码来源:kernel-lifecycle.ts
示例2: test
test("launches remote kernels", async function() {
const contentRef = "fakeContentRef";
const kernelRef = "fake";
const value = {
app: stateModule.makeAppRecord({
host: stateModule.makeJupyterHostRecord({
type: "jupyter",
token: "eh",
basePath: "http://localhost:8888/"
}),
notificationSystem: { addNotification: jest.fn() }
}),
comms: stateModule.makeCommsRecord(),
config: Immutable.Map({}),
core: stateModule.makeStateRecord({
kernelRef: "fake",
entities: stateModule.makeEntitiesRecord({
contents: stateModule.makeContentsRecord({
byRef: Immutable.Map({
fakeContentRef: stateModule.makeNotebookContentRecord()
})
}),
kernels: stateModule.makeKernelsRecord({
byRef: Immutable.Map({
fake: stateModule.makeRemoteKernelRecord({
type: "websocket",
channels: new Subject<any>(),
kernelSpecName: "fancy",
id: "0"
})
})
})
})
})
};
const state$ = new StateObservable(
new Subject<stateModule.AppState>(),
value
);
const action$ = ActionsObservable.of(
actions.launchKernelByName({
contentRef,
kernelRef,
kernelSpecName: "fancy",
cwd: "/",
selectNextKernel: true
})
);
const responseActions = await coreEpics
.launchWebSocketKernelEpic(action$, state$)
.pipe(toArray())
.toPromise();
expect(responseActions).toEqual([
{
type: "LAUNCH_KERNEL_SUCCESSFUL",
payload: {
contentRef,
kernelRef,
selectNextKernel: true,
kernel: {
info: null,
sessionId: "1",
type: "websocket",
channels: expect.any(Subject),
kernelSpecName: "fancy",
cwd: "/",
id: "0"
}
}
}
]);
});
开发者ID:kelleyblackmore,项目名称:nteract,代码行数:74,代码来源:websocket-kernel.spec.ts
示例3: concatMap
concatMap((action: actions.RestartKernel | actions.NewKernelAction) => {
const state = state$.value;
const oldKernelRef = action.payload.kernelRef;
const notificationSystem = selectors.notificationSystem(state);
if (!oldKernelRef) {
notificationSystem.addNotification({
title: "Failure to Restart",
message: "Unable to restart kernel, please select a new kernel.",
dismissible: true,
position: "tr",
level: "error"
});
return empty();
}
const oldKernel = selectors.kernel(state, { kernelRef: oldKernelRef });
if (!oldKernelRef || !oldKernel) {
notificationSystem.addNotification({
title: "Failure to Restart",
message: "Unable to restart kernel, please select a new kernel.",
dismissible: true,
position: "tr",
level: "error"
});
// TODO: Wow do we need to send notifications through our store for
// consistency
return empty();
}
const newKernelRef = kernelRefGenerator();
const initiatingContentRef = action.payload.contentRef;
// TODO: Incorporate this into each of the launchKernelByName
// actions...
// This only mirrors the old behavior of restart kernel (for now)
notificationSystem.addNotification({
title: "Kernel Restarting...",
message: `Kernel ${oldKernel.kernelSpecName ||
"unknown"} is restarting.`,
dismissible: true,
position: "tr",
level: "success"
});
const kill = actions.killKernel({
restarting: true,
kernelRef: oldKernelRef
});
const relaunch = actions.launchKernelByName({
kernelSpecName: oldKernel.kernelSpecName,
cwd: oldKernel.cwd,
kernelRef: newKernelRef,
selectNextKernel: true,
contentRef: initiatingContentRef
});
const awaitKernelReady = action$.pipe(
ofType(actions.LAUNCH_KERNEL_SUCCESSFUL),
filter(
(action: actions.NewKernelAction | actions.RestartKernel) =>
action.payload.kernelRef === newKernelRef
),
take(1),
timeout(60000), // If kernel doesn't come up within this interval we will abort follow-on actions.
concatMap(() => {
const restartSuccess = actions.restartKernelSuccessful({
kernelRef: newKernelRef,
contentRef: initiatingContentRef
});
if (
(action as actions.RestartKernel).payload.outputHandling ===
"Run All"
) {
return of(
restartSuccess,
actions.executeAllCells({ contentRef: initiatingContentRef })
);
} else {
return of(restartSuccess);
}
}),
catchError(error => {
return of(
actions.restartKernelFailed({
error,
kernelRef: newKernelRef,
contentRef: initiatingContentRef
})
);
})
);
return merge(of(kill, relaunch), awaitKernelReady);
})
开发者ID:nteract,项目名称:nteract,代码行数:99,代码来源:kernel-lifecycle.ts
注:本文中的@nteract/actions.launchKernelByName函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论