Enable lock for Vector to protect wasm-c-api read/write/extend operations (#1010)

This commit is contained in:
liang.he
2022-03-23 11:42:57 +08:00
committed by GitHub
parent e7079eeb17
commit 86b79cfb93
8 changed files with 198 additions and 121 deletions

View File

@ -23,6 +23,7 @@ typedef struct Vector {
size_t num_elems;
/* size of each element */
size_t size_elem;
void *lock;
} Vector;
/**
@ -35,7 +36,8 @@ typedef struct Vector {
* @return true if success, false otherwise
*/
bool
bh_vector_init(Vector *vector, size_t init_length, size_t size_elem);
bh_vector_init(Vector *vector, size_t init_length, size_t size_elem,
bool use_lock);
/**
* Set element of vector
@ -60,7 +62,7 @@ bh_vector_set(Vector *vector, uint32 index, const void *elem_buf);
* @return true if success, false otherwise
*/
bool
bh_vector_get(const Vector *vector, uint32 index, void *elem_buf);
bh_vector_get(Vector *vector, uint32 index, void *elem_buf);
/**
* Insert element of vector