Wie kann die Kompilierungszeit beim Lesen von Includes über ein Netzwerk verkürzt werden?

Wie kann die Kompilierungszeit beim Lesen von Includes über ein Netzwerk verkürzt werden?

Mein Projekt ist sehr klein, aber mehrere Includes werden in einem Netzwerk gehostet. Gibt es eine Möglichkeit, die Kompilierungszeit zu beschleunigen und die Latenz zu reduzieren, ohne eine lokale, nicht synchronisierte Kopie zu spiegeln?

Ich habe die Quelle bereits einem lokalen Ordner auf meinem System (Windows) zugeordnet und die Dateien so eingestellt, dass sie „offline verfügbar“ sind, wodurch sie lokal synchronisiert werden. Aber wenn ich mit der Kompilierung beginne, kann ich sehen, wie meine Netzwerkgeschwindigkeit ansteigt, da sie (scheinbar) aus dem Netzwerk liest. Nachdem die Kompilierung abgeschlossen ist, sinkt meine Netzwerkgeschwindigkeit auf Null.

Wenn ich diese Dateien und Verzeichnisse so eingestellt habe, dass sie offline verfügbar sind, warum wird dann nicht der lokale Cache verwendet? Oder wird der Cache nur abgefragt, wenn offline ist? Kann das Lesen des Caches erzwungen werden?

Meine Entwicklungsumgebung ist Windows 10 x64 und die Dateien werden auf einem lokalen Server gehostet, auf dem CentOS 7 mit Samba läuft. Ich kompiliere über die Befehlszeile mit Make.

Antwort1

Tatsächlich bedeutet die Funktion „Offline verfügbar“, dass die zuletzt abgerufene Kopie für die lokale Verwendung zwischengespeichert wird, wenn auf die Netzwerkfreigabe nicht mehr zugegriffen werden kann.

Solange jedoch auf die Netzwerkfreigabe zugegriffen werden kann, wird die Netzwerkkopie verwendet. Andernfalls gäbe es keine Möglichkeit, die Synchronisierung für eine spätere lokale Verwendung aufrechtzuerhalten. Es gibt keinen Hintergrundprozess, der kontinuierlich nach Remote-Dateiänderungen und -Synchronisierungen sucht – es handelt sich um einen „Sync-as-you-use“-Mechanismus.

Sie könnten eine geplante Aufgabe einrichten, um die Remotedateien von Zeit zu Zeit in einen lokalen Ordner zu kopieren. Sie laufen Gefahr, von Zeit zu Zeit mit veralteten Headern zu kompilieren, aber das scheint tatsächlich das zu sein, wonach Sie suchen.

verwandte Informationen