Finish multiple thread counting

This commit is contained in:
Haoyu Cheng
2019-05-12 02:16:20 -04:00
parent 94bd75e576
commit 9302fc6058
25 changed files with 1209 additions and 34 deletions

View File

@@ -65,13 +65,8 @@ int get_read(kseq_t *s)
void init_R_buffer_block(R_buffer_block* curr_sub_block)
{
int i;
for (i = 0; i < RDB.size; i++)
{
curr_sub_block->read = (kseq_t*)calloc(RDB.block_inner_size, sizeof(kseq_t));
curr_sub_block->num = 0;
}
curr_sub_block->read = (kseq_t*)calloc(RDB.block_inner_size, sizeof(kseq_t));
curr_sub_block->num = 0;
}
@@ -94,6 +89,27 @@ void init_R_buffer(int thread_num)
}
void destory_R_buffer_block(R_buffer_block* curr_sub_block)
{
free(curr_sub_block->read);
}
void destory_R_buffer()
{
int i = 0;
for (i = 0; i < RDB.size; i++)
{
destory_R_buffer_block(&RDB.sub_block[i]);
}
free(RDB.sub_block);
}
inline void load_read_block(R_buffer_block* read_batch, int batch_read_size,
int* return_file_flag)
{
@@ -215,6 +231,8 @@ void* input_reads_muti_threads(void*)
pthread_cond_signal(&i_readinputstallCond); //important
pthread_mutex_unlock(&i_readinputMutex);
destory_R_buffer_block(&tmp_buf);
}