Skip to content

Commit 63e0697

Browse files
committed
SchedulerPostTask: Reuse original TaskController (#27595)
## Summary It's not clear to me why we currently create a new TaskController in `runTask` – ultimately, we use the same signal and priority from the original created in `unstable_scheduleCallback` ## How did you test this change? ``` yarn test SchedulerPostTask ``` DiffTrain build for [a17467e](a17467e)
1 parent 2d0b5da commit 63e0697

8 files changed

+40
-68
lines changed

compiled/facebook-www/REVISION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
6bfc0e032acc7e5ad6da2a09f3c4f47f3321da2c
1+
a17467e7e2cd8947c595d1834889b5d184459f12

compiled/facebook-www/ReactDOM-profiling.modern.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16781,7 +16781,7 @@ Internals.Events = [
1678116781
var devToolsConfig$jscomp$inline_1840 = {
1678216782
findFiberByHostInstance: getClosestInstanceFromNode,
1678316783
bundleType: 0,
16784-
version: "18.3.0-www-modern-327d25fe",
16784+
version: "18.3.0-www-modern-9cbf42e3",
1678516785
rendererPackageName: "react-dom"
1678616786
};
1678716787
(function (internals) {
@@ -16826,7 +16826,7 @@ var devToolsConfig$jscomp$inline_1840 = {
1682616826
scheduleRoot: null,
1682716827
setRefreshHandler: null,
1682816828
getCurrentFiber: null,
16829-
reconcilerVersion: "18.3.0-www-modern-327d25fe"
16829+
reconcilerVersion: "18.3.0-www-modern-9cbf42e3"
1683016830
});
1683116831
exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = Internals;
1683216832
exports.createPortal = function (children, container) {
@@ -17078,7 +17078,7 @@ exports.useFormState = function () {
1707817078
exports.useFormStatus = function () {
1707917079
throw Error(formatProdErrorMessage(248));
1708017080
};
17081-
exports.version = "18.3.0-www-modern-327d25fe";
17081+
exports.version = "18.3.0-www-modern-9cbf42e3";
1708217082

1708317083
/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */
1708417084
if (

compiled/facebook-www/SchedulerPostTask-dev.classic.js

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -97,15 +97,9 @@ function runTask(priorityLevel, postTaskPriority, node, callback) {
9797
if (typeof result === "function") {
9898
// Assume this is a continuation
9999
var continuation = result;
100-
var continuationController = new TaskController({
101-
priority: postTaskPriority
102-
});
103100
var continuationOptions = {
104-
signal: continuationController.signal
105-
}; // Update the original callback node's controller, since even though we're
106-
// posting a new task, conceptually it's the same one.
107-
108-
node._controller = continuationController;
101+
signal: node._controller.signal
102+
};
109103
var nextTask = runTask.bind(
110104
null,
111105
priorityLevel,

compiled/facebook-www/SchedulerPostTask-dev.modern.js

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -97,15 +97,9 @@ function runTask(priorityLevel, postTaskPriority, node, callback) {
9797
if (typeof result === "function") {
9898
// Assume this is a continuation
9999
var continuation = result;
100-
var continuationController = new TaskController({
101-
priority: postTaskPriority
102-
});
103100
var continuationOptions = {
104-
signal: continuationController.signal
105-
}; // Update the original callback node's controller, since even though we're
106-
// posting a new task, conceptually it's the same one.
107-
108-
node._controller = continuationController;
101+
signal: node._controller.signal
102+
};
109103
var nextTask = runTask.bind(
110104
null,
111105
priorityLevel,

compiled/facebook-www/SchedulerPostTask-prod.classic.js

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,18 +23,14 @@ function runTask(priorityLevel, postTaskPriority, node, callback) {
2323
currentPriorityLevel_DEPRECATED = priorityLevel;
2424
var result = callback(!1);
2525
if ("function" === typeof result) {
26-
var continuationController = new TaskController({
27-
priority: postTaskPriority
28-
}),
29-
continuationOptions = { signal: continuationController.signal };
30-
node._controller = continuationController;
31-
var nextTask = runTask.bind(
32-
null,
33-
priorityLevel,
34-
postTaskPriority,
35-
node,
36-
result
37-
);
26+
var continuationOptions = { signal: node._controller.signal },
27+
nextTask = runTask.bind(
28+
null,
29+
priorityLevel,
30+
postTaskPriority,
31+
node,
32+
result
33+
);
3834
void 0 !== scheduler.yield
3935
? scheduler
4036
.yield(continuationOptions)

compiled/facebook-www/SchedulerPostTask-prod.modern.js

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,18 +23,14 @@ function runTask(priorityLevel, postTaskPriority, node, callback) {
2323
currentPriorityLevel_DEPRECATED = priorityLevel;
2424
var result = callback(!1);
2525
if ("function" === typeof result) {
26-
var continuationController = new TaskController({
27-
priority: postTaskPriority
28-
}),
29-
continuationOptions = { signal: continuationController.signal };
30-
node._controller = continuationController;
31-
var nextTask = runTask.bind(
32-
null,
33-
priorityLevel,
34-
postTaskPriority,
35-
node,
36-
result
37-
);
26+
var continuationOptions = { signal: node._controller.signal },
27+
nextTask = runTask.bind(
28+
null,
29+
priorityLevel,
30+
postTaskPriority,
31+
node,
32+
result
33+
);
3834
void 0 !== scheduler.yield
3935
? scheduler
4036
.yield(continuationOptions)

compiled/facebook-www/SchedulerPostTask-profiling.classic.js

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,18 +23,14 @@ function runTask(priorityLevel, postTaskPriority, node, callback) {
2323
currentPriorityLevel_DEPRECATED = priorityLevel;
2424
var result = callback(!1);
2525
if ("function" === typeof result) {
26-
var continuationController = new TaskController({
27-
priority: postTaskPriority
28-
}),
29-
continuationOptions = { signal: continuationController.signal };
30-
node._controller = continuationController;
31-
var nextTask = runTask.bind(
32-
null,
33-
priorityLevel,
34-
postTaskPriority,
35-
node,
36-
result
37-
);
26+
var continuationOptions = { signal: node._controller.signal },
27+
nextTask = runTask.bind(
28+
null,
29+
priorityLevel,
30+
postTaskPriority,
31+
node,
32+
result
33+
);
3834
void 0 !== scheduler.yield
3935
? scheduler
4036
.yield(continuationOptions)

compiled/facebook-www/SchedulerPostTask-profiling.modern.js

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,18 +23,14 @@ function runTask(priorityLevel, postTaskPriority, node, callback) {
2323
currentPriorityLevel_DEPRECATED = priorityLevel;
2424
var result = callback(!1);
2525
if ("function" === typeof result) {
26-
var continuationController = new TaskController({
27-
priority: postTaskPriority
28-
}),
29-
continuationOptions = { signal: continuationController.signal };
30-
node._controller = continuationController;
31-
var nextTask = runTask.bind(
32-
null,
33-
priorityLevel,
34-
postTaskPriority,
35-
node,
36-
result
37-
);
26+
var continuationOptions = { signal: node._controller.signal },
27+
nextTask = runTask.bind(
28+
null,
29+
priorityLevel,
30+
postTaskPriority,
31+
node,
32+
result
33+
);
3834
void 0 !== scheduler.yield
3935
? scheduler
4036
.yield(continuationOptions)

0 commit comments

Comments
 (0)