Будет путаница GC.NET с заброшенным объектом, выполняющим метод асинхронно?

Проблема в этой области:

StringTokenizer st = new StringTokenizer(in.readLine());

         String n = st.nextToken(); // <-- error occurs here
         String n2 = st.nextToken();

         int n1 = Integer.parseInt(n);

         times[i] = n1;
         string[i] = n2;

Один из способов сделать это:

for (int i = 0; i < l; i++) {
         String line = in.readLine();
         String[] splitLine = line.split(" ");

        int n1 = Integer.parseInt(splitLine[0]);
        String n2 = splitLine[1];

         times[i] = n1;
         string[i] = n2;
}
5
задан 14 May 2009 в 15:19
поделиться

1 ответ

Если вы используете полностью управляемый код, он не будет собираться.

Делегат вы стреляете - это часть объекта (из вашего описания). Пока он запущен, существует активная ссылка на объект. Как только делегат завершит работу, объект станет кандидатом на сбор.

Однако, если вы вызываете собственный код в делегате, есть некоторые ситуации, когда объект может быть фактически завершен до завершения собственного кода. Дополнительные сведения см. В этой ветке форума MSDN .

12
ответ дан 13 December 2019 в 05:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: