Closed Bug 1203976 Opened 9 years ago Closed 9 years ago

main thread freeze during arraybuffer transfer

Categories

(Core :: DOM: Core & HTML, defect)

41 Branch
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: noitidart, Unassigned)

Details

User Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0
Build ID: 20150907144446

Steps to reproduce:

In case 1:
- from chromeworker, spawn a web worker
- web worker transfers arraybuffer to chromeworker
- during transfer the main thread freezes

In case 2:
- from mainthread spawn chromeworker
- transfer arraybuffer from chromeworker to mainthread
- during transfer main thread freezes

TEST CASE - no transferring of arraybuffer, main thread does not freeze
- Install NativeShot addon from this commit: https://github.com/Noitidart/NativeShot/tree/80784721c6ec33391521ce6f086fe820df5e757c
- Click the icon that gets added to the toolbar, you will see there is no freeze on main ui

TEST CASE - transfer array buffer, will see freeze
- Instal nativeshot from the next commit from previous test case, so install from here: https://github.com/Noitidart/NativeShot/tree/3cac7d649d8795cacb1ac30fa129bedc02a70c3e
- Click the icon in toolbar, you will notice main thread ui freezes

The only difference between the two commits is seen in this github diff:
https://github.com/Noitidart/NativeShot/commit/3cac7d649d8795cacb1ac30fa129bedc02a70c3e
So in the diff posted here, the issue was found not to be the transferring we're investigating it here: https://github.com/Noitidart/NativeShot/commit/fe8a4d33a71ead841bb7a9f2037f325bbffd34fb#diff-b83c0bde60e252508b3088b391d3c14fL2073

However I didnt close this as invalid, because in case 1 I didnt do the Uint8ClampedArray.set method, which was what fixed the freeze in case 2. So I have to figure out what it was in case 1 and update here.
Component: Untriaged → DOM
Product: Firefox → Core
Reporter, what is the actual issue remaining here?  Does it actually require a chromeworker, or can you reproduce the problem using a simple testcase with nested web workers?
Flags: needinfo?(noitidart)
(In reply to Boris Zbarsky [:bz] from comment #2)
> Reporter, what is the actual issue remaining here?  Does it actually require
> a chromeworker, or can you reproduce the problem using a simple testcase
> with nested web workers?

Hi Boris, I think we can mark this invalid. The issue was using arraybuffer/uint8array of window - https://bugzilla.mozilla.org/show_bug.cgi?id=1204172
Status: UNCONFIRMED → RESOLVED
Closed: 9 years ago
Flags: needinfo?(noitidart)
Resolution: --- → INVALID
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.