Bug 59745
Summary: | Sharing strings across threads now always require copies the 1st time. | ||
---|---|---|---|
Product: | WebKit | Reporter: | David Levin <levin> |
Component: | Web Template Framework | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED WONTFIX | ||
Severity: | Normal | CC: | ap, barraclough, dslomov, kbalazs, levin, zoltan |
Priority: | P2 | ||
Version: | 528+ (Nightly build) | ||
Hardware: | All | ||
OS: | All |
David Levin
Strings are suppose to move across thread without copies but this got broken when the StringImpl internal buffer support got added.
Gavin has some good ideas about how to fix this:
1. If I understand correctly, we would change StringImpl::deref so that it didn't do delete a StringImpl was shared and make it so that in the BufferShared case it pointed to the buffer part of a StringImpl which is BufferInternal.
2. Alternatively we could always allocate a separate buffer for large strings.
The first approach is only slightly more complicated but seems more efficient.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
David Levin
The shared string stuff was removed. When it was removed, I looked at the cases that were the motivating cases and they had over time been changed to no longer need the sharing, so this bug is obsolete.