|
|
[fsp] Add throttling for number of opened files.
This patch adds a limit for number of opened files at once. The reason for that
is that provided file systems may not support multiple opened files per once due
to performance reasons. Enqueuing files is on the extension side is complicated
as extensions are event pages, and state may get lost after a suspend.
Note, that this CL only adds the C++ side. The opened_files_limit option is not
exposed via File System Provider API yet. This will be done separately.
Finally, the Queue class will be reused for enqueuing watcher events, which are
currently not safe (there are TODO about adding a queue). This will be also done
separately.
TEST=unit_tests: *FileSystemProviderQueue*, *FileSystemProviderThrottled*
BUG= 445125
Committed: https://crrev.com/3dd2edf4a117d03d2ec45bb3dcf205cb7561a7e1
Cr-Commit-Position: refs/heads/master@{#310717}
Total comments: 16
Total comments: 6
Total comments: 12
Total comments: 2
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+1105 lines, -167 lines) |
Patch |
 |
A |
chrome/browser/chromeos/file_system_provider/abort_callback.h
|
View
|
1
|
1 chunk |
+20 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/fake_provided_file_system.h
|
View
|
1
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/fake_provided_file_system.cc
|
View
|
1
|
14 chunks |
+16 lines, -19 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/fileapi/file_stream_reader.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
3 chunks |
+5 lines, -5 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/fileapi/file_stream_writer.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
3 chunks |
+5 lines, -5 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/provided_file_system.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/provided_file_system.cc
|
View
|
1
|
14 chunks |
+16 lines, -17 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/provided_file_system_info.h
|
View
|
1
2
3
4
5
6
7
8
9
|
3 chunks |
+5 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/provided_file_system_info.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
3 chunks |
+7 lines, -2 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/provided_file_system_interface.h
|
View
|
1
|
2 chunks |
+1 line, -3 lines |
0 comments
|
Download
|
 |
A |
chrome/browser/chromeos/file_system_provider/queue.h
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+99 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/browser/chromeos/file_system_provider/queue.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+119 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/browser/chromeos/file_system_provider/queue_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+324 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/registry.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/registry.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
4 chunks |
+21 lines, -11 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/registry_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
8 chunks |
+18 lines, -14 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/chromeos/file_system_provider/service.cc
|
View
|
1
|
2 chunks |
+3 lines, -1 line |
0 comments
|
Download
|
 |
A + |
chrome/browser/chromeos/file_system_provider/throttled_file_system.h
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+41 lines, -90 lines |
0 comments
|
Download
|
 |
A |
chrome/browser/chromeos/file_system_provider/throttled_file_system.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+218 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/browser/chromeos/file_system_provider/throttled_file_system_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+177 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/chrome_browser_chromeos.gypi
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
3 chunks |
+5 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/chrome_tests_unit.gypi
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
Total messages: 22 (4 generated)
|