Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(39)

Issue 2903013002: [dart:io] Re-limit the number of IO Service ports per Isolate (Closed)

Created:
3 years, 6 months ago by zra
Modified:
3 years, 6 months ago
Reviewers:
bkonyi, rmacnak, siva
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Target Ref:
refs/heads/master
Visibility:
Public.

Description

[dart:io] Re-limit the number of IO Service ports per Isolate Previous change removed the limit, but this causes too many threads to be spawned at the same time on Windows, which crashes the VM. This change restores the limit, but continues use of the free-list approach, which still avoids the blocking problem fixed by the previous change. fixes #29702 R=rmacnak@google.com Committed: https://github.com/dart-lang/sdk/commit/61300d19c60851fb306656d97e5bea42dcfe0aa8

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+28 lines, -12 lines) Patch
M runtime/bin/io_service_patch.dart View 2 chunks +28 lines, -12 lines 0 comments Download

Messages

Total messages: 10 (4 generated)
zra
3 years, 6 months ago (2017-05-24 15:11:32 UTC) #3
zra
3 years, 6 months ago (2017-05-24 17:12:25 UTC) #5
rmacnak
lgtm
3 years, 6 months ago (2017-05-24 17:18:39 UTC) #6
zra
Committed patchset #1 (id:1) manually as 61300d19c60851fb306656d97e5bea42dcfe0aa8 (presubmit successful).
3 years, 6 months ago (2017-05-24 17:22:31 UTC) #8
bkonyi
Just curious, but is there any situation where we would need more than 32 IO ...
3 years, 6 months ago (2017-05-24 17:49:09 UTC) #9
zra
3 years, 6 months ago (2017-05-24 18:00:16 UTC) #10
Message was sent while issue was closed.
On 2017/05/24 17:49:09, bkonyi wrote:
> Just curious, but is there any situation where we would need more than 32 IO
> service ports active at the same time? If so, how are we handling that?

The 33d request could potentially be starved if there are 32 long-blocking
requests in progress. However, since we can't create an arbitrary number of
threads/ports, we have to pick *some* number where that will happen. It could be
the case that 32 is too small, so we'll just have to see how things go.

Powered by Google App Engine
This is Rietveld 408576698