이전 목록 다음
채택완료

webassembly로 함수 선언해서 js쪽에서 사용

2020-11-21 (토) 13:42:41 2,156

... 할 수 있을까요?

(webassembly가 바이너리로 컴파일되어 실행되는 방식이라면 js의 기존 setInterval()함수의 개선판을 만들수 있을거 같아서...)

|

답변 2개 / 댓글 2개

채택된 답변
+20 포인트

가능합니다. 

Copy
const {wasmGIF, decoder} = wasm_bindgen;

let m;

async function execute() {

m = await wasm_bindgen('./pkg/gif_bg.wasm');

console.log(m);

wasmGIF("/rust/test.gif").then((arrayBuffer) =>{

console.time("calculatingTime");

var de = decoder(arrayBuffer);

console.timeEnd("calculatingTime");

console.log(de);

});

제가 만들었던 gif decorder의 wasm 부분 소스인데 wasm파일에서 정의된

wasmGIF, decoder부분의 함수가 wasm에서 함수로 정의되고
 

var de = decoder(arrayBuffer);

로 실행시키고 있습니다

답변에 대한 댓글 2개

혹시 소스 주실 수 있나요...?
rust로 만드느냐 c로 만드느냐에 따라 베이스 언어 함수 호출 방식등이 조금씩 달라집니다.
https://developer.mozilla.org/ko/docs/WebAssembly/Concepts
해당 링크에 언어별 hello, world 데모들이 나와있으니 해당 부분 참조해보세요

WebAssembly는 공부는 안해 봤지만 가능할 것 같습니다.

Go Lang도 컴파일해서 Javascript에서 불러서 사용합니다.

WebAssembly도 공부는 하고 싶은데....

답변을 작성하려면 로그인이 필요합니다.