У меня 1000 и 1 вопрос по GTK, но самый острый на данный момент это потоки. Читал здесь, здесь, документацию и ещё пару бложиков. Всё равно не осилил. Прошу лоровцев помочь. Вот для примера код:
#include <gtk/gtk.h>
const int BIG_NUM= 9000;
void button1_callback(GtkWidget *button1, gpointer data)
 {
    int i,j,k,l,m;
   
    for(i= 0; i < BIG_NUM; ++i)  
     for(j= 0; j < BIG_NUM; ++j)  
      for(k= 0; k < BIG_NUM; ++k)  
       for(l= 0; l < BIG_NUM; ++l)  
        for(m= 0; m < BIG_NUM; ++m);  
  
 }
void button2_callback(GtkWidget *button2, gpointer data)
 {
     g_printf("Ouch!\n");
 }
int main(int argc, char *argv[])
 {
    GtkWidget *window;
    GtkWidget *button1, *button2;
    GtkWidget *hbox;
    gtk_init(&argc, &argv);
    window= gtk_window_new(GTK_WINDOW_TOPLEVEL);
    g_signal_connect(window, "destroy", G_CALLBACK(gtk_main_quit), NULL);
    gtk_widget_set_size_request(GTK_WIDGET(window), 320, 240);
    gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
    hbox= gtk_hbox_new(FALSE, 0);
    button1= gtk_button_new_with_label("button1");
    button2= gtk_button_new_with_label("button2");
    g_signal_connect(button1, "clicked", G_CALLBACK(button1_callback), NULL);
    g_signal_connect(button2, "clicked", G_CALLBACK(button2_callback), NULL);
    gtk_container_add(GTK_CONTAINER(window), hbox);
    gtk_box_pack_start(GTK_BOX(hbox), button1, TRUE, TRUE, 0);
    gtk_box_pack_start(GTK_BOX(hbox), button2, TRUE, TRUE, 0);
    gtk_widget_show_all(window);
    gtk_main();
    return 0;
 } На данный момент больше вопросов нет, но они обязательно будут и я их озвучу сюда, чтоб не засорять форум. Заранее спасибо.






