WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
65809
Move the shared LineBreakIteratorPool from ThreadGlobalData into its own ThreadSpecific
https://bugs.webkit.org/show_bug.cgi?id=65809
Summary
Move the shared LineBreakIteratorPool from ThreadGlobalData into its own Thre...
mitz
Reported
2011-08-06 00:41:44 PDT
Move the shared LineBreakIteratorPool from ThreadGlobalData into its own ThreadSpecific
Attachments
Remove ThreadGlobalData::lineBreakIteratorPool() and implement LineBreakIteratorPool::shared() using ThreadSpecific
(12.34 KB, patch)
2011-08-06 00:54 PDT
,
mitz
no flags
Details
Formatted Diff
Diff
Remove ThreadGlobalData::lineBreakIteratorPool() and implement LineBreakIteratorPool::shared() using ThreadSpecific
(3.86 KB, patch)
2011-08-06 09:45 PDT
,
mitz
no flags
Details
Formatted Diff
Diff
Remove ThreadGlobalData::lineBreakIteratorPool() and implement LineBreakIteratorPool::shared() using ThreadSpecific
(4.11 KB, patch)
2011-08-06 09:49 PDT
,
mitz
sam
: review+
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
mitz
Comment 1
2011-08-06 00:42:34 PDT
<
rdar://problem/9338442
>
mitz
Comment 2
2011-08-06 00:54:21 PDT
Created
attachment 103145
[details]
Remove ThreadGlobalData::lineBreakIteratorPool() and implement LineBreakIteratorPool::shared() using ThreadSpecific
Darin Adler
Comment 3
2011-08-06 07:45:56 PDT
Comment on
attachment 103145
[details]
Remove ThreadGlobalData::lineBreakIteratorPool() and implement LineBreakIteratorPool::shared() using ThreadSpecific View in context:
https://bugs.webkit.org/attachment.cgi?id=103145&action=review
> Source/WebCore/platform/text/LineBreakIteratorPoolICU.h:92 > + static WTF::ThreadSpecific<LineBreakIteratorPool>* staticPool;
Since this is used only in one function it could be a static local to the function rather than a static data member. If it was, the function would not need an explicit check for null and we also would have no need for LineBreakIteratorPoolICU.cpp.
mitz
Comment 4
2011-08-06 09:45:08 PDT
Created
attachment 103149
[details]
Remove ThreadGlobalData::lineBreakIteratorPool() and implement LineBreakIteratorPool::shared() using ThreadSpecific
mitz
Comment 5
2011-08-06 09:49:59 PDT
Created
attachment 103150
[details]
Remove ThreadGlobalData::lineBreakIteratorPool() and implement LineBreakIteratorPool::shared() using ThreadSpecific
mitz
Comment 6
2011-08-06 10:01:15 PDT
Fixed in <
http://trac.webkit.org/r92553
>.
Alexey Proskuryakov
Comment 7
2011-08-06 17:34:48 PDT
I know what's bad about this approach (frameworks shouldn't waste thread specific keys). What's good about it?
mitz
Comment 8
2011-08-06 19:39:50 PDT
(In reply to
comment #7
)
> I know what's bad about this approach (frameworks shouldn't waste thread specific keys). What's good about it?
Making the LineBreakIteratorPool actually thread-specific even in ports that don’t enable HTML5 Worker Threads. In that configuration, ThreadGlobalData is shared between all threads in the process; however, LineBreakIteratorPools still need to be per-thread.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug