SORU
20 ŞUBAT 2012, PAZARTESİ


() çatal ve çıkış

Basit bir program var:

int main()
{
    std::cout << " Hello World";
    fork();
}

Programdan sonra benim çıkış yürütür: Hello World Hello World. Neden bu Hello world tek yerine olur mu? Çocuk sürecin perde arkasında çalıştırın ve çıkış tampon işler veya bu satırlar boyunca bir şey arasında paylaşılan, ama konuyla ne alakası var olanların, başka bir şey olduğunu tahmin ediyorum?

CEVAP
20 ŞUBAT 2012, PAZARTESİ


Bu aslında düşündüğün gibi değil. Çıkış arabelleği çatalı çalıştırdığınızda, paylaşılan değilher iki süreç de aynı tampon bir kopyasını alın. Sana çatal sonra, her iki süreç sonunda arabelleği temizleme ve içeriğini ayrı ayrı ekrana yazdırın.

Buprint tamponlanmış olur, IO. Eğer tamponlu değil cerr kullandıysanız, yalnızca iletinin bir kez, ön çatal görmelisiniz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • foreignimage

    foreignimage

    13 HAZİRAN 2006
  • iMasterful

    iMasterful

    11 EYLÜL 2009
  • TheRightTire

    TheRightTire

    14 EKİM 2009