move code to signal handler
This commit is contained in:
parent
c55eb784cb
commit
47d809c692
1 changed files with 5 additions and 11 deletions
|
@ -27,6 +27,8 @@ static console_state con_st;
|
|||
|
||||
static bool is_interacting = false;
|
||||
|
||||
llama_context * ctx;
|
||||
|
||||
#if defined (__unix__) || (defined (__APPLE__) && defined (__MACH__)) || defined (_WIN32)
|
||||
void sigint_handler(int signo) {
|
||||
set_console_color(con_st, CONSOLE_COLOR_DEFAULT);
|
||||
|
@ -35,6 +37,9 @@ void sigint_handler(int signo) {
|
|||
if (!is_interacting) {
|
||||
is_interacting=true;
|
||||
} else {
|
||||
//printf("Exit call given, printing stats and exiting.\n");
|
||||
llama_print_timings(ctx);
|
||||
llama_free(ctx);
|
||||
_exit(130);
|
||||
}
|
||||
}
|
||||
|
@ -92,8 +97,6 @@ int main(int argc, char ** argv) {
|
|||
// params.prompt = R"(// this function checks if the number n is prime
|
||||
//bool is_prime(int n) {)";
|
||||
|
||||
llama_context * ctx;
|
||||
|
||||
// load the model
|
||||
{
|
||||
auto lparams = llama_context_default_params();
|
||||
|
@ -437,15 +440,6 @@ int main(int argc, char ** argv) {
|
|||
n_remain -= line_inp.size();
|
||||
}
|
||||
|
||||
// exit gracefully when the word "exit" is typed.
|
||||
if (buffer.length() == 5 && strncmp(buffer.c_str(), "exit", 4) == 0) {
|
||||
printf("Exit call given, printing stats and exiting.\n");
|
||||
llama_print_timings(ctx);
|
||||
llama_free(ctx);
|
||||
set_console_color(con_st, CONSOLE_COLOR_DEFAULT);
|
||||
return 0;
|
||||
}
|
||||
|
||||
input_noecho = true; // do not echo this again
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue