Witam, mam problem z nieskończoną pętlą.
Mianowicie mój program ma działać non stop.
Sprawdzać czy istnieje plik na dysku, jeśli pojawi się to od razu go otwierać czytać, i to co wyczytał zapisywać w innym pliku na za-mapowanym dysku sieciowym.
Problem tkwi w tym, że aplikacja działa w nieskończonej pętli i po pewnym czasie system wywala ją. Pamięć pochłania także bardzo szybko. Szukałem jakiegoś rozwiązania na Google, ale zanim to znajdę to zestarzeje się :P
Poniżej zamieszczam kod.
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Threading;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
funkja();
}
public void funkja()
{
Thread.Sleep(1000);
Wczytaj();
MessageBox.Show("wyskoczylem");
}
public void Wczytaj()
{
try
{
FileInfo plikor = new FileInfo("D:\\cos.txt");
if (plikor.Exists == true)
{
string path1 = Path.Combine("D:\\", "cos.txt");
FileStream fs = new FileStream(path1, FileMode.Open);
StreamReader sr = new StreamReader(fs);
string doZmapowany = sr.ReadToEnd();
sr.Close();
plikor.Delete();
MessageBox.Show("W SRODKU");
string path2 = Path.Combine("K:\\", "cos.txt");
FileStream fw = new FileStream(path2, FileMode.Open);
StreamWriter sw = new StreamWriter(fw);
sw.WriteLine(doZmapowany);
sw.Close();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
Application.ExitThread();
}
funkja();
}
}
}