[G1-Sync] Manual knowledge update
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-0A2C98
|
||||
id: [[P-Reinforce]]-AUTO-0A2C98
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
@@ -13,9 +13,9 @@ github_commit: "[P-Reinforce] Continuous Worker - SharedArrayBuffer와 Atomics
|
||||
> `SharedArrayBuffer`를 통해 다중 스레드에서 공유되는 메모리에 접근할 때 데이터 경쟁(Data Race)을 막기 위해, 자바스크립트 내장 객체인 `Atomics`의 정적 메서드들을 활용하여 안전하게 데이터를 읽고 쓰고 동기화하는 기법입니다.
|
||||
|
||||
## 📖 구조화된 지식 (Synthesized Content)
|
||||
제공된 소스 자료에서는 `SharedArrayBuffer`가 스레드 간 복사 비용 없이 데이터를 공유하고 원자적 연산(Atomic operations)을 지원하여 고성능 환경에 적합하다는 점을 설명하고 있습니다. **다만 구체적인 자바스크립트 `Atomics` API의 사용법은 소스 자료에 포함되어 있지 않아, 아래의 구현 방법 및 코드는 외부 지식을 바탕으로 설명해 드립니다.**
|
||||
제공된 소스 자료에서는 `SharedArrayBuffer`가 스레드 간 복사 비용 없이 데이터를 공유하고 원자적 연산(Atomic [[Opera]]tions)을 지원하여 고성능 환경에 적합하다는 점을 설명하고 있습니다. **다만 구체적인 자바스크립트 `Atomics` API의 사용법은 소스 자료에 포함되어 있지 않아, 아래의 구현 방법 및 코드는 외부 지식을 바탕으로 설명해 드립니다.**
|
||||
|
||||
**1. 공유 메모리와 뷰(View) 생성** `SharedArrayBuffer`는 원시 이진 데이터이므로, 값을 조작하려면 `Int32Array`와 같은 타입화된 배열(TypedArray) 뷰를 씌워야 합니다.
|
||||
**1. 공유 메모리와 뷰(View) 생성** `SharedArrayBuffer`는 원시 이진 데이터이므로, 값을 조작하려면 `Int32Array`와 같은 타입화된 배열([[TypedArray]]) 뷰를 씌워야 합니다.
|
||||
|
||||
```
|
||||
// 메인 스레드에서 생성
|
||||
|
||||
Reference in New Issue
Block a user